用诸如「什么是Rollup」或「为什么我们需要Rollup」之类的话题来开始一篇Rollup文章,就像在蜘蛛侠和蝙蝠侠电影的每次迭代中杀死UncleBen或射杀韦恩妈妈和爸爸一样。如果你正在阅读本文,我假设你上述问题已经有了基本的了解,在此,我们跳过应用程序链与应用程序Rollup的争论,直入主题。特定应用程序Rollup的兴起通用Rollup令人沮丧通用Rollup就像印度的学校系统(我确信它们与其他学校系统具有相似的特征,但我只对它有第一手经验)。运动员、歌手、数学家、思想家和经济学家都需要经历相同的过程才能获得及格分数。这个系统并不「偏向」特定群体,但也不是对所有人都「公平」。但是嘿,我们交朋友了!(这稍后会很重要)。同样,对于通用Rollup上的应用程序,瓶颈是运行环境本身,因为Rollup无法单独满足每个应用程序的需求。每个应用程序可能需要不同类型的优化,任何定制化改进对他们而言都是不合理的。但是,如果你只是进行尝试并想要大致了解一些东西,那么这是最方便的选择。此外,对于像一些普通学生一样的某些应用程序,这可能是正确的解决方案!
特定应用程序Rollup令人困惑好吧,我的孩子运动能力太强,不适合在公立学校上学,他需要特殊训练。我需要送他去体校还是应该聘请私人教练……Rollup难以明确分类来玩个游戏下面有8个特定应用程序Rollup。然而,每组中有1个项目并不真正属于该组。你能看出是哪一个吗?应用程序专用性正在成为一个令人费解的术语。有一些特定应用程序Rollup,允许在其自身之上部署合约;也有一些特定应用程序Rollup,可以允许合约部署,因为它们的虚拟机支持它,但是会有一定限制;还有一些特定应用程序Rollup,它们具有封闭的虚拟机或根本没有虚拟机,并且不支持其他类型的开发。将它们分类在一起公平吗?上述练习的答案:Group1:Celo是一个奇怪的选项,因为它允许其他开发人员构建应用程序,而其他开发人员可以直接使用应用程序。第1组中可以考虑的其他项目还有Fuel-v1、Aevo、RhinoFi等第2组:Loopring是个奇怪的选项,因为它是唯一专门构建的可直接使用的Rollup,而其余的都是针对隐私、NFT和TPS等特定功能进行优化的网络,以便部署在其上的应用程序可以继承这些功能。第2组中可以考虑的其他项目还有Kinto、Kroma、PublicGoodsNetwork等在修改后的通用虚拟机中部署合约的问题你部署智能合约的这些虚拟机只不过是图灵完整的状态机。你在它们上部署的合约只是对状态本身的修改,它并不真正影响VM的核心状态转换规则。
Rollup本质上是虚拟机,你的业务逻辑位于其之上。你的业务逻辑与Rollup的状态转换函数是分开的。我也将其称为「构建应用程序的智能合约范例」,因为你在虚拟机之上部署一些额外的逻辑。Rollup并不「直接」关心证明应用程序的逻辑。VM是Rollup,而不是你的应用程序。当然,你是虚拟机的唯一所有者,你的应用程序是唯一的公民,你可以不断增强基础本身以使其适合应用程序。你可以继续增强状态转换功能(STF),添加/删除操作码来提高应用程序的性能,但应用程序仍然是独立的并受到VM本身的限制。就像兰博基尼Urus拉着兰博基尼Huracan特定应用程序Rollup上的单独应用程序可以做得更好。如果你不断增强STF,使STF的范围不断变得越来越小以适应你的应用程序的业务逻辑,会怎么样?最终,随着你不断增强,STF将收敛到业务逻辑和STF重叠的点,此时你会意识到……哦,等一下!Micro-Rollup诞生因此,Micro-Rollup只不过是应用程序的状态转换函数是业务逻辑本身的Rollup。
应用程序成为Rollup,可以在任何执行环境中以任何可能的方式管理状态,并且状态转换规则可以直接应用在应用程序的运行时中。该应用程序可以不受任何限制地进行定制。证明与你的业务逻辑相关,而不是与机器相关,它使你的应用程序变得轻量级。Micro-Rollup在开发人员体验方面不受限制。你可以使用任何你喜欢的工具来构建它们,因为它们不受虚拟机限制。它们看起来像web2后端应用程序,但它们会定期向L1发布交易证明。我认为这将成为影响web2开发人员转向web3领域的一个主要因素。实际上,更好的例子是RimacNevera,因为它速度更快,而且是电动的,所以运行起来可能更便宜这种方法的唯一缺点是针对每个不同应用程序的自定义证明机制。如果应用程序逻辑可以编译成公共中介,那么证明公共中介就可以消除单独证明每个应用程序的痛苦,但我个人认为这只是效率和更快的开发之间的权衡。有一些方法可以解决这个问题,而无需使用涉及虚拟机的执行层。如果有一个工具可以让开发人员做到这一点呢?
这就是StackrLabs的使命:我们正在构建一个Micro-Rollup框架和SDK,以便任何人和每个人都可以不受限制地以他们想要的任何语言构建他们的应用程序,就像构建web2后端应用程序一样。让Micro-Rollup开发像编写和部署智能合约一样简单,更不用说模块化增加了开发人员选择任何生态系统的能力。那么Micro-Rollup是真的吗?一直都是,就像Rollup本身一样真实。像Loopring、dYdX和Fuel-v1等应用程序已经出现或已经存在很长时间了。这些是高度优化的Rollup,具有专门运行的自定义逻辑来服务其用例。我所知道并亲自参与过的第一个不基于虚拟机的特定应用程序Rollup是HubbleOptimisticRollup,这个已有3年历史的项目曾一度充当Worldcoin代币的核心基础设施。现在区分这些术语变得越来越重要。Micro-Rollups的用例是无限的:游戏、交易所、NFT市场等消费产品应用程序链可以转换为应用程序Rollup你甚至可以构建支持独特用例的新型虚拟机,从而打开虚拟机创新之门结论我之前展示的结构树中缺少自定义状态机的元素。此外,对于单独的应用程序来说,使用基于VM或EVM的Rollup来部署单个协议的效率并不高。它适用于已经拥有大量智能合约并在类似EVM的链上运行其协议的应用程序,但不适用于「想要更多的应用程序」并希望摆脱VM限制。所以如果我们修剪这棵树,最终的树会看起来像这样。这也是为什么我认为在不久的将来App-Rollup、Micro-Rollup或RollApp将被称为App的原因。因此,MicroRollup=ApponRollupAppasRollup。