如今 eth1 链的扩展正在发生,Rollups 已经部署,其它扩展方案也在开发中。 想要“使用某条 Rollup 链”的用户,需要在该 Rollup 位于执行链 (eth1) 上的合约中存储一些资产,之后用户就可以在该 Rollup 上做一些事情了,比如使用自己的资产与该 Rollup 链上的其它资产进行交易。一旦用户完成了想要做的事情,就可以将资产从 Rollup撤回至执行链中。就是这样!Rollups 有什么其它替代性方案?如果我们没有这些并行运行的 Rollps 链(上图中的黄色链),而是拥有很多条并行运行的执行链(上图中的红色链),那会如何?比如,如果 eth1 链被“复制”,并与其它几条复制链并行运行,那会怎样?其中的问题在于我们如何处理几条平行运行的执行链。如果其中某条执行链想要知道另一条执行链中发生的事情,那该如何做到?这正是分片(sharding) 遇到的棘手问题(注:也即所谓的跨分片通信问题)。你可能会说,“Rollups 差不多也有这样的问题!”,实际上确实如此。当你在某条 Rollup 链上想要与另一条 Rollup 链进行交互时,同样的棘手问题也会出现 (即跨Rollup通信问题)。但重点是,当前存在几种 Rollup 设计,这一问题的解决方案空间很广阔,且在很大程度上尚未被探索。因此,在将某种方案纳入协议层之前,为何不通过 Rollups 先启动试验呢?这将我们带向了以 Rollup 为中心的以太坊路线图[1]。 以 Rollup 为中心的 eth2:使用分片来保存 Rollups 发布的数据 你听说过区块空间的稀缺性吧?Rollups 需要发布数据,而 eth1 的区块空间是稀缺的!且如上所述,跨分片很难。因此,为什么不使用分片来保存 Rollups 需要发布的数据呢?借助于 64 条分片链,就能带来比当前可用的多出 64 倍的带宽,而且可能更多,因为一个分片区块将可能保存比当前的 eth1 区块更多的数据量。应该强调的是,这并不意味着在分片层的执行功能会永远被排除在外。当前以 Rollup 为中心的以太坊路线图是一种短期到中期的前进方式,直到 (例如) 找到更好的加密原语来保证正确地将执行划分到多条链中(注:即实现可执行分片)。这一切都非常迷人,应该会让很多人忙上很长一段时间。在此期间,Rollups 是解决之道。 每条 Rollup 链都是其自身的“执行环境”:如何轻松地迁往/迁出 Rollup?我们可以进行跨Rollup操作吗?Rollups 应该如何处理拥堵问题? 这方面还有很多工作要做!首先,我们不要忘记,合并和数据分片是非常复杂的工作,目前有多个团队在致力于其中一项或兼顾这两项工作。而即便是在 Rollup 方面,仍然有一些非常有趣的问题有待探讨,以下仅是其中一些: (责任编辑:admin) |