# 模块化之后的下一步--关于区块链底层优化路径的探寻

By [toddz](https://paragraph.com/@toddz) · 2022-08-26

---

这两周花了不少时间来弄明白新公链&新L2的创新点，并尝试从中寻找模块化之后，下一个公链底层创新可能出现的地方，就有了“拆分&优化&重组”--是我从所有这些创新中提炼出的第一性原则，更是我认为会长期指引区块链不断优化的第一性原则。

TL, DR;
-------

*   近期的创新（Danksharding，Aptos&Sui，Altlayer），抽象来看都在走 “先拆分，再优化的路线” 的路线，这与模块化区块链的初始理念一致，但又走的更远 **➡️** 这样的理念会持续指引区块链优化的方向
    
*   将不同项目创新项目的创新点进行抽离和重组，可以获得更好的效果：将并行计算引入模块化区块链框架
    
*   即便给整个框架带来了大量的复杂性，但我们仍应该继续 “拆分&优化” ，区块链还未到“做减法”的时候
    

什么是细分&优化&重组：
------------

这个理念源于“模块化区块链”（关于为什么不直接用“模块化”，可以去看我的上一个[Post](https://mirror.xyz/toddz.eth/mtqlM6Snf_ivDGlg-5QraWyfiSS6874jZCv3qUluyjQ)），但与当前主流的模块化定义存在一定的不同：

*   模块化理念意味着将区块链三大块 “存储，计算，共识” 中至少一块拆分成相对独立运行的结构，e.g. Celestia将存储层拆分，并提供通用的存储层以支持更高的效率&更多的自主性；
    
*   拆分&优化&重组，代表着在三大块中任意单一块中，按照优化需求做进一步“拆分”，并最终重组成一个更高可能性的区块链，e.g. 在计算层，将所有交易按照分类来独立执行。
    

这个理念其实很好理解：**让每一个结构可以执行尽可能简单的计算，以获得单个结构最大的效率提升。**

基础层创新中的 “拆分&优化”
---------------

### 以太坊--Danksharding

在以太坊基金会研发团队[第八次AMA](https://www.reddit.com/r/ethereum/comments/vrx9xe/ama_we_are_ef_research_pt_8_07_july_2022/)中，Justin明确表示“以太坊正在变得越来越模块化”（Ethereum is becoming increasingly modular）

![Justin在Reddit中回复的截屏](https://storage.googleapis.com/papyrus_images/64365f6017a697f81aea3453a67091b333ede7bd9f5b64779e80e454c4643aa1.png)

Justin在Reddit中回复的截屏

但你应该也注意到了，Justin口中的 “模块化” 是超出了当前市场上大量被讨论的 “模块化区块链” 概念的：

*   第四点 “Proposer Versus Builder” 提出将交易排序与最终出块进行拆分，以获取抗MEV的特性 >>> 此设计并没有在Danksharding之外的项目中看到；
    
*   第五点 “Prover Versus Verifier” 提出将部分非关键性共识验证逻辑从关键性共识SNARK验证逻辑中剥离，并以此开发出两套客户端，以获取更好的网络效能 >>> 针对Prover和Verifier提供两套客户端的设计也并未在Danksharding之外的项目中看到，但这样的设计是其他项目能够快速参考 & 上手的理念。
    

以上这两点均完美契合了“拆分&优化”的定义。

### Aptos & Sui

_并行计算 是Aptos和Sui 扩容方案中的核心理念。_

其实，并行计算是一种已经在Web2中被大量验证过的扩容理念，但其中的前置条件限制了这种理念在当前主流区块链：_两两之间存在相关性&冲突性的交易无法直接进行并行计算，e.g. 当两个用户与Uniswap中的同一个交易对进行交互，A用户交易执行后会改变B用户面对的资产兑价，那么先执行A还是先执行B对结果是存在冲突的。_

Aptos & Sui 通过一系列的分类处理来解决了这样的限制：

*   [Software Transactional Memory](https://link.springer.com/article/10.1007/s004460050028) （STM）与[optimistic concurrency control](https://en.wikipedia.org/wiki/Optimistic_concurrency_control) （OCC）的组合，是一种对内存访问进行检测并管理冲突的方法（从链上对交易的记录最终会修改数据库的视角）：先乐观的让并行的多个线程独立完成对共享数据库的修改，完全忽略可能会有其它的线程存在，如果不涉及冲突，则可以轻松的处理超大量的内存修改；如果涉及冲突，则会对单个交易进行回滚，并待冲突交易更新完毕后再执行。
    

这种分类处理的概念从某种意义上也完全符合 “拆分&优化” 的理念：

*   将共识层和执行层进一步细分，按照交易的类别来对整个P2P网络中的所有进行分类处理，让每一个结构可以独立完成对共享数据库的修改，这样尽可能优化了单个结构的执行要求。
    

### Altlayer

_Altlayer是一个可插拔的&按需加载的L2&L3框架，主要针对应用阶段性的高扩展性需求。_

如果你一定要问我Altlayer和其他主流L2的区别，我大概会说：Altlayer是套弹性的扩容方案，而其他主流L2都是非弹性的。

以下的这种场景将最大化弹性扩容的价值：

*   .大量的NFT项目会在其Mint活动期间爆发出超高量的交易，但长期中并不会持续有对高TPS的要求 >>> 弹性扩容方案可以满足NFT项目Mint期间的网络需求，且长期不会给NFT项目带来持续性负担。
    

Altlayer的核心理念也完美契合“拆分&优化”的理念：

*   弹性扩容本质上是将用户的需求进行细分，针对阶段性&突发性需求，提供了更加优化的方案--弹性扩容其实在传统云服务中是一种非常常见的解决方案。
    

### 简单的归纳一下：

**在以太坊诞生至今的数年里，关于最优的区块链的大体框架结构其实已经越来越清晰，但我们仍需要将区块链底层再次优化以适应大规模应用的需求，那优化的方向是？**

*   **方向之一：将区块链这个整体进行细分，并对细分结构进行极致的优化；**
    
*   方向之二：新一代的技术替代，e.g. 零知识证明，10x的网络带宽，10x的固态硬盘空间（如果你一定要我“细分&优化”之外，还有什么方向的话 🙃）
    

请注意：通过细分&优化的单个结构，重组的方案也可以创新，且最终效果可能远超原计划！
-----------------------------------------

### 下一代以太坊杀手？

最近社群里其实有很多关于下一代以太坊杀手的讨论：Move匪帮Aptos & Sui **V.S**. 模块化标杆Celestia

个人认为：不是上述的任何一个，但会包含上述方案中的创新点

![](https://storage.googleapis.com/papyrus_images/608a57b86700f513fb1125628c54ca0c5faaae16576bf4dbbab42fc3e2451356.png)

*   **大体四层框架**：Celestia& Danksharding已经展示了将Monolithic Blockchain拆分成四层再优化的价值（拆分成更多层当然是可以的，但这里为了方便大家理解，就拆成四层）
    
*   **存储--Celestia**：从节点规模层面来看，Celestia可以是目前最安全的独立DA层；
    
*   **交易排序共识--Celestia**：通过引入DAS（Data Availability Sampling），Celestia能够提供高效的对交易顺序的共识；此外，将交易进行分类后的并行计算，也同样能加速此结构。
    
*   **状态共识--类Aptos&Sui共识**：并行计算在理论上拥有极高的处理效能，是当前此层的最效率选项；此外，引入ZK技术，可进一步优化（已出现 ZKmove 的[讨论](https://github.com/young-rocks/zkmove-lite)）
    
*   **执行**：作为相对独立的一层，现有很多方案已经极大的释放了开发者的可能性；而弹性扩容可作为一个补充以应对各类突发需求。
    

### 上述“以太坊杀手” V.S. 以太坊（Danksharding）

_以太坊是更安全的选项，但在可扩展性&自定义能力上并不占优--个人观点（可能会update :D）_

*   Aptos&Sui的共识涉及到了区块链状态共识部分，意味着该共识天生就和以太坊现有框架无法集成 >>> 以太坊目前还无法集成这类并行计算的创新，至少在短期不太行。
    

链级别的创新是否让框架变得过于复杂？
------------------

从Vitalik在EthCC打趣 “Shall we cancel sharding” ，再到@Polynya的《4844 and Done》，市场上有许多关于 “减缓链创新以降低区块链复杂度” 的讨论。

个人偏向于 **“还没到简化的阶段”**：如果我们回看云服务行业的发展历程，在前半段的数年里，云服务变得越来越有用的同时也是在变得复杂。直到近几年，我们才看到越来越多的简化措施，e.g. Serverless, IAC

*   新兴技术的发展大概都是你这样的三部曲：**“寻找&确定一套通用且最具价值的大框架” ➡️ “提升能力范围，也变得复杂” ➡️ “简化以获得更好的使用体验和更低的成本”**
    
*   **简化的前提是东西已经足够好用，而当前的区块链底层基础很明显尚未达到 “足够好用” 的级别。_我们仍在上半场_**
    

我十分坚信：我们能在漫长的熊市中看到更多的 “细分&优化” ！ 届时，再回来做更新🥳🥳🥳

---

*Originally published on [toddz](https://paragraph.com/@toddz/TDyVKRlEvHmh8MHmpd9E)*
