从编程语言到 DeFi 协议,「可组合性」是 Web 3.0 里被青睐的名词。但是可组合性并不只是叙事方法,当一种工作模式发展到一定程度势必要变得专精和可拆解。那么区块链在扩容这一令人头痛的问题上在逐渐向模块化推进也是必然。
我们知道区块链的主要堆栈有数据可用层,共识层,结算层和交易执行层。那么单体区块链(monolithic)就是使四层的工作都在一个网络完成。网络中的每一个节点都需要处理数据的验证到交易的执行。
然而可想而知,随着交易量上升,单体区块链逐渐遇到瓶颈。目前用户秉承着去中心化愿景包容着以太坊高额交易费用和远比不过 Visa 的每秒转账速度。
究其核心,单体区块链的瓶颈的核心源于数据的累积,因为区块链的不可篡改性,数据可用是扩容不可以牺牲的前提。
但是为了推动大规模采用(mass adoption),单体区块链势必要向模块化演进。
在考虑到以太坊的发展进程上,Vitalik 曾说过以太坊将会呈现以 rollup 为重心的生态状态。Rollup 是一种将执行层分离出去的扩容解决方法,在链下处理计算,但还是将每笔交易的一部分数据放在链上。Rollup 的吞吐量呈线性增长,因为如果交易量越大,也就意味着越多的数据需要被广播至主网。这样一来,Rollup 吞吐量(throughput)的瓶颈还是落在了底层网络的数据带宽上。
为了跨过这个瓶颈,以太坊的最终扩容计划 - 分片(Sharding)的初步实施就是要让分片出来的链来执行数据可用。
显而易见,单体区块链的发展方向不仅要向模块化推进,专注于做数据可用性的模块化区块链或者方案格外的值得关注。以太坊的目标是在不权衡去中心化和安全性的情况下扩展计算。由于整体区块链架构的限制,数据可用性对于实现去中心化的可扩展性至关重要。