首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

单片 vs 模块化:谁才是区块链的未来?

撰写:Kodi,espresso

编译:深潮 TechFlow

1992 年,计算机科学家 Andrew Tanenbaum 断言 Linux 已经死了。如果你不熟悉 Linux,我来介绍下,它是一款在硬核计算机用户中很流行的操作系统。

Tanenbaum 宣称 Linux 之死的原因在于它使用的内核。内核就像操作系统的引擎,负责完成让计算机运转的各种任务。

Linux 采用单片式内核,这意味着整个操作系统作为一个高度集成的单元运行。

但在 1990 年代,Tanenbaum 和其他人认为微内核可能会取代经典的单片式内核。在微内核架构中,核心内核保持最简单,大多数单片式内核提供的服务改为由小型独立模块实现。

一个名为 GNU Hurd 的微内核项目旨在取代 Linux 单片式内核。

后来情况如何了呢?

如果你碰巧正在通过 Android 手机阅读这篇文章,那么你实际上正在使用经过修改的 Linux 内核。

虽然在个人电脑系统中不太流行,微软 Windows 和苹果 Mac 占据主导,但 40%的嵌入式系统计算机(用于执行特定任务的计算机,比如控制交通信号灯的计算机)使用的都是 Linux。它还应用在 70%的智能手机和 80%的所有网站服务器上。

哦,全球前 500 大超级计算机也全部运行在 Linux 系统上。

与此同时,GNU Hurd 至今仍处在开发中。

如果这些对你来说已经很熟悉的话,那么你就知道类似的论战当前也在加密货币领域激烈展开。这对以太坊和其他第 1 层区块链的未来具有重大意义。

单片 vs 模块化

在区块链架构设计中,主要有两种方法。第一种是单片式设计。顾名思义,这意味着一个区块链处理所有的功能。

我们可以把单片式链分成四大功能模块:执行、结算、共识和数据可用性。

让我们回顾一下以太坊交易的步骤,以更好地理解它们。

假设你买了一个 NFT。首先是执行阶段,节点处理这笔交易,将 NFT 转移到你的钱包。

接下来是结算过程,将这笔交易不可逆转地记录到区块链中。交易发生的证明现在已在区块链上,无法篡改。

然后是共识阶段,去中心化网络中的节点认可这笔交易有效。

最后是数据可用性阶段,将交易细节发布到点对点网络,确保所有节点可以按需访问这些数据。

现在,你拥有了你的 NFT,每个人都确认你拥有它,任何人都可以验证这一点。

比特币、以太坊和 Solana 等早期区块链项目采用的是单片式结构,一个系统处理所有这些步骤。

但是,早期区块链设计就像你小时候烤的第一块薄煎饼:有点混乱、效率低下,到处都是妥协和次优设计。到目前为止,几乎所有区块链仍无法以合理的成本为用户提供去中心化、安全和可扩展的解决方案。

这使它们不太适合大规模采用。

最典型的例子就是以太坊。作为第一个通用智能合约平台,它具有革命性,但以太坊由于交易吞吐量低和费用高而未能实现扩展。

看到以太坊的困境,许多加密货币领域的人转向模块化区块链作为潜在的解决方案。

模块化架构将不同的责任分配给专门的链。

共识、执行、数据可用性——为什么一条链要被迫全部处理呢? 专门的模块化链可以专注于做好一件事。

例如,你可以把共识和数据可用性留给一条链,把执行和结算留给另一条链。这就是主权 rollup 的样子。

你通常在以太坊看到的 rollup(比如 Arbitrum 或 Optimism)是一种模块化链,专门处理执行部分,而将结算、共识和数据可用性留给以太坊。

以太坊的最终目标,正如 Vitalik 所预言的,是成为其他 rollup 的基础结算层。这种设计被视为区块链架构设计的最佳实践。

模块化的拥护者认为,将区块链划分为乐高式的组件可以实现更高的定制化和可扩展性。

但我认为,推崇模块化设计源自以太坊现在所处的位置。

现状是,以太坊无法处理大量的活动。即使最忠实的以太坊粉也会同意这一点。

但以太坊也聚集了大量资本(包括财务和人力资源)。它承载了最高的结算价值,是最多创新的地方,也是最吸引人才的。

因此,投入大量资源推进以太坊向模块化未来发展并不令人意外,而不是建设一个更优的单片式链。

以太坊的拥护者会让你相信这场辩论已经尘埃落定,模块化区块链天生优于单片式。单片式链与运行高性能、去中心化和安全的链不符。

然而,我们将在下文看到,模块化架构也存在自己的隐藏成本,可能无法实现所承诺的目标。

模块化链的核心缺陷

首先,单片区块链的性能高于模块化区块链。

我就直接这么说吧。

我知道这可能与主流观点相左,但没有任何证据显示模块化链会优于单片式

正如我提到的,性能最强的计算机都运行单片式内核。区块链基本也没什么不同。如果你看看当前性能最强的公链(Solana、Sui、Aptos),它们都是单片式的。

部分原因是单片式链上的所有交易都在一个集成的链上执行。交易可以在内部如流水线之间无阻碍流动,不需要等待不同链上的数据。碎片化的缺失使交易可以高效处理。

单片链也更简单。简单就是好。特别是对于高度复杂的系统。

用户和开发者只需要与一个系统互动,不必在多个复杂模块之间进行协调。

单片式链在本质上也更安全。通过保持验证者在同一个网络,与模块化链相比,黑客的攻击面更小。不用说跨链桥有多不安全了。

最后,单片链通过避免过度的跨链消息传递来降低通信开销。模块化系统需要大量链间消息以协调活动,这带来带宽、延迟和费用成本。

总之,单片集成可以改进性能、简单性、安全性、流动性和运行成本。

仅仅将功能模块化不能自动使系统变得更好。

此外,模块化链(至少以太坊和它的 rollup 的当前愿景)存在一个单片已经解决的重大缺陷,Solana 联合创始人 Anatoly Yakovenko 这样解释:

Solana 设计的初衷就是处理具有不同需求的并发程序,使它们不会相互影响。

我认为,模块化没有解决处理并发用例的问题,每个 L2 都是一个单线程运行时,会遇到以太坊 L1 今天面临的同样问题。

Anatoly 的意思是以太坊,特别是以太坊虚拟机(EVM),是顺序处理交易,即一个接一个。即使是验证和结算来自 L2 的交易,它也会顺序执行。

这严重限制了吞吐量和可扩展性,即使硬件更先进也是如此。

因此,为了提高性能,区块链需要采用并行化,也就是同时处理多笔交易的能力。

如今大多数计算机都有这种能力,特别是性能最强的。

区块链也不例外。能够处理并行交易的链(如 Solana、Sui、Aptos)的性能远超以太坊。

即使一个 Layer 2 rollup 可以处理并行交易,它随后可能会吸收绝大部分甚至全部活动,使其他 rollup 乃至以太坊变得多余。

EVM 已死,EVM 万岁

新出现的 Monad 链建立在改进 EVM 的基础上。

通过实现并行交易处理,Monad 解决了可能是 EVM 设计中最大的缺陷。

但这还不是全部。

Monad 还使用一个名为 MonadDB 的全新存储后端,以加速合约和状态访问。每次执行交易时,链都需要访问存储中的数据以处理该交易。而 EVM 当前的存储方式使得访问存储是一个缓慢的过程。

MonadDB 实现了更高效的存储。并且因为 Monad 可以处理并行执行,它还可以实现异步输入/输出(I/O),即链可以在读写数据到存储的同时继续执行交易。

此外,Monad 将共识层和执行层分离开来。这使共识可以并行地领先执行,而不是限制交易处理。

哦,Monad 还实现了一个新的共识算法。现在,节点可以以更快、更高效的方式达成共识。

通过这些和其他优化,Monad 对 EVM 做出了重大改进。

当然,这一切还只停留在纸面上。我们还没有看到 Monad 的实际运行。

谁知道呢,或许 Monad 未能实现所承诺的目标。但通过挑战主流架构范式,像 Monad 这样的项目可进一步推动区块链技术的集体进步。

也许模块化链最终会获胜,也许单片架构被证明是更好的设计。但两者都没有垄断创新、垄断智慧。真正的突破需要开放地探索传统思维或狭隘思考之外的新思路。如果加密货币要实现其承诺,决策架构必须以实证为基础,而非教条。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/ODsBFBJxmqRAydZWheOESshw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券