原文:The Starknet ‘Bolt’ upgrade: 2-second txs are here
翻译及校对:Starknet 中文社区
📑 转载请注明出处 🕹️
v0.13.2 引入了两个新功能,为 Starknet 的未来做好准备。
「并行执行」可同时执行独立交易,大幅提升 Starknet 当前的处理能力。
「区块打包」将削减固定的 L1 成本,高达 66%,并将交易确认时间缩短至两秒,区块时间缩短至 20-60 秒。
Starknet 实现了在以太坊上构建任何 dApp 的可能性,而无需考虑其所需的计算能力。被社区称为「Bolt」的 v0.13.2 升级,通过加速交易确认时间,并在 Starknet 更新的 2024 年路线图中规划的成本节约和性能优化基础上,扩展了其未来用例的处理能力。此次升级的两个主要特点是什么?一起来了解一下「并行执行」和「区块打包」吧。
顾名思义,「并行执行」使 Starknet 排序器中的交易能够同时执行,极大地扩展了网络容量,远超当前需求,以支持未来用例。简而言之,这意味着交易确认时间将因速度的提升而大大缩短,因为并行执行所需的时间远远少于按顺序执行。有趣的事实:Starknet 是首个实现在主网同时执行并行交易的 L2 项目。
「区块打包」带来了更快的 L2 交易确认时间,约 80% 的交易确认时间仅为 2 秒,每个区块的固定 L1 成本最多可降低 66%。L2 区块生成时间将缩短至 20-60 秒左右。其通过将 L2 区块频率与 L1 成本解耦来实现这一目标。
听起来很酷吧?让我们深入了解一下细节。
我们提到并行执行可以扩展网络容量,甚至远超网络当前需求。那么,具体是如何实现的呢?
直到现在,Starknet 的排序器都是按顺序执行交易,然后将其打包成一个区块。这种执行方法高效运行,不会为 Starknet 网络容量带来过重的负担。
但 Starknet 正在构建未来网络。其中一个重要部分就是尽可能地扩大网络容量,以适应未来不可避免地需要更高计算能力的应用程序活动。
并行执行通过允许序列器同时执行多个相互独立的交易,从而极大地扩展了网络容量。以下是可以并行执行的交易示例:
交易 A:Bob 向 Alice 发送 ETH。
交易 B:Sebastian 向 Bill 发送 STRK。
这些交易相互独立,无需排队等待按顺序执行。相反,它们可以并行执行。这大大加快了排序器执行交易的速度。
但是,如果 Bob 需要先将他的 STRK 转换为 ETH,然后才能发送给 Alice,该怎么办呢?
交易 A:Bob 将 STRK 转换为 ETH。
交易 B:Bob 将 ETH 发送给 Alice。
在这种情况下,交易 B 依赖于交易 A,因为 Bob 需要先收到 ETH,然后才能将其发送给 Alice。如果交易 B 在交易 A 之前执行,那么 Bob 钱包里可能就没有足够的 ETH 发送给 Alice,这样交易就会失败。
并行执行带来的额外网络容量确保了,即使在新用例不断出现和网络需求增加的情况下,Starknet 上的交易仍能保持快速且高效。
并行执行提高了交易执行阶段的效率,区块打包则提高了将交易打包成区块后的后续步骤的效率。
这一新功能实际上将「打包」逻辑应用于区块本身,将多个区块合并成一种超级区块,从而将 L1 成本分摊到更多的交易中,实现 L2 区块频率与 L1 成本的解耦。
通俗地说,这意味着更快的区块生成时间和更低的每笔交易成本。
要了解其工作原理,需要注意的是,L1 的运营成本是固定的,无论这些区块包含多少交易,其都会随着 L1 从 L2 接收区块的频率线性上升。每个生成并发送到 L2 的区块需要一定数量的 gas(当前每个区块至少需要 215000 gas)。因此,L2 向 L1 发送区块的频率越高,成本就越高。
如果你不想等到区块满了,而是以更短的时间间隔在 L1 上结算区块(在 Starknet 上,不论区块是否填满,区块生成间隔为每 6 分钟),就意味着你需要在成本与速度之间做出取舍。
那么如何避免这种取舍呢?
区块打包正是通过将多个 L2 区块打包成一个特殊的应用递归证明来解决这个问题。通过区块打包,每次 Starknet 状态更新会处理多个 Starknet 区块,从而实现了 L1 固定成本的批量处理。于是,区块生成时间得以缩短,就不会增加额外成本。
这样的结果是加快了确认时间,降低了 L1 成本。通过区块打包,交易确认只需 20-60 秒(目标是缩短到 2 秒)。在成本方面,大部分固定的 L1 成本现在都分摊到了所有打包的区块上,使这些成本降低了 50-66%。
区块打包的额外好处是,随着越来越多的用户加入 Starknet,成本将进一步降低,而不是提高,因为这意味着每个应用递归证明可以打包更多的 L2 区块。随着更多用户加入网络,每个用户的单个 L1 占用也会减少,从而确保 Starknet 的卓越可扩展性能够真正得以实现。
v0.13.2 升级推动了当前可扩展性的边界,并为 Starknet 未来的大规模应用做好准备。并行执行使得独立交易可以同时执行,提升了网络容量,甚至超越了当前的需求,并为网络未来的发展做好准备。区块打包解锁了频繁生成区块的同时,优化了 gas 消耗。
有关更多技术细节,请参阅并行执行和区块打包的社区论坛帖子,或关注 Starknet Twitter/X 的更多内容更新。