我们正通过 Flashblocks 将 Base 的速度提升 10 倍

Base 主网将引入 Flashblocks 技术,通过 200 毫秒的“预确认区块”使交易感觉瞬间完成,速度提升 10 倍。Flashblocks 通过由区块构建器发出的子区块,每200毫秒流式传输到节点,实现更快的确认时间,从而改善用户体验。开发者可以通过 RPC 或 WebSocket 集成 Flashblocks,并注意交易排序和潜在的回滚风险。

为Base主网上的应用带来近乎即时的响应速度。

2025年5月15日

人们期望在与应用交互时获得闪电般快速的响应,而流畅的用户体验是实现全球链上经济的关键。借助由Flashbots构建的技术Flashblocks,Base链将拥有200毫秒的“预确认区块”,使交易感觉像是即时的。这将使Base比现在快10倍,预计于今年夏季上线。

如果你是构建者、节点运营商或对在Base上集成Flashblocks感兴趣的钱包,你可以立即在Base Sepolia上集成它们,为在Base主网上的全面推出做准备。我们建议你提前阅读,了解集成Flashblocks所需的内容,并为你的应用用户提供快10倍的体验。


将Flashblocks引入Base主网

目前,Base每2秒创建一个新区块。Flashblocks是由区块构建者发出的子区块,每200毫秒流式传输到节点,从而实现更早的确认时间。

post image

每个Flashblock包含常规区块约10%的交易(按gas计算),并且可以将一系列Flashblocks组合起来以重新创建完整的区块。对于想要获得更快用户体验的节点和应用程序,它们是一个可选的补充。在不进行任何更改的情况下,节点和应用程序将继续以与今天相同的方式运行。

自从在Base Sepolia上启用Flashblocks以来,我们已经看到来自世界各地的用户的交易包含时间减少了多达10倍(见下面的附录)。要亲身体验这种速度,请在我们的演示中实时查看测试网上的Flashblocks,并尝试其他构建者构建的一些应用

post image比较有和没有Flashblocks的tx包含时间


应用、钱包和索引器如何集成Flashblocks

集成Flashblocks

从较高的层面来看,你可以通过两种方式集成Flashblocks:

  1. 推荐: 使用支持Flashblocks的RPC provider

  2. websocket订阅Flashblocks。

我们强烈建议你使用RPC provider而不是订阅websocket,因为它将支持你今天熟悉的库,并且在Flashblock中断时支持优雅的回退。

你可以在我们的文档中找到有关如何将Flashblocks集成到你的应用程序中、RPC endpoint支持以及哪些库支持Flashblocks的详细信息。

交易排序

Flashblocks将以两种关键方式更改区块内的交易排序:

时序

Flashblocks每200毫秒构建一次,每次对区块的一部分进行排序。与当前系统中具有更高优先级费用的后来到达的交易可以放置在区块顶部的系统不同,Flashblocks创建了一个基于时间的约束。一旦构建并广播了Flashblock,即使稍后到达的交易具有更高的优先级费用,其交易排序也会被锁定,它不能包含在较早的、已经构建的Flashblocks中。

高Gas限制

如果你的应用创建具有较大gas限制的交易,我们建议你进行监控以检测包含延迟的任何变化。gas限制超过当前区块gas限制的1/10(目前为1400万gas)的交易面临额外的约束:

  • 每个Flashblock只能使用区块总gas限制的一部分

  • Flashblock 1:高达总gas量的1/10

  • Flashblock 2:高达总gas量的2/10

  • 后续的Flashblocks以此类推

因此,具有较大gas需求的交易必须等待具有足够gas容量的后续Flashblocks。例如,超过区块gas限制的1/10的交易不能包含在Flashblock 1中,必须等待Flashblock 2或更高版本。

了解回滚、重组和可靠性

重组(Reorgs)

当Flashblocks流与最终区块不同时,就会发生重组。这将导致一些RPC响应返回的数据可能与最终区块不同。在我们的初始版本中,这可能会发生。尽管我们预计这种情况很少发生,但你的应用程序需要能够处理它们。我们计划在未来的更新中减少这些重组发生的频率。

回滚保护(Revert Protection)

在我们的初始版本中,将不会启用回滚保护。交易将继续像今天一样在Base上回滚。我们计划在未来的更新中 investigte 启用回滚保护,作为我们正在进行的开发路线图的一部分。

可靠性

如果Flashblocks中断,链将继续推进,但会回退到标准的2秒区块时间。在中断期间:

  • RPC调用和发送交易将继续工作,但交易包含速度较慢

  • websocket endpoint将不返回任何数据

预计中断的情况很少发生——我们对Flashblocks正常运行时间的SLA为99.9%。

节点运营商集成

Flashblocks是你节点的加粗可选加粗功能。如果不激活,你的节点将完全按照今天的运行方式运行。激活Flashblocks会对执行客户端进行两项更改:

  1. 它们连接到Flashblocks数据流

  2. Flashblock信息将用于修改某些ETH RPC endpoint的响应

启用Flashblocks

你需要运行我们集成了Flashblocks支持的Base Reth binary。如果你有兴趣了解Flashblocks与其他执行客户端的兼容性,请在base/node存储库上提交issue,我们将探讨扩展支持。

有关完整的配置说明和设置指南,请参阅我们的documentation

接收Flashblocks

构建Flashblocks后,它们会立即通过websocket由sequencer广播。我们的websocket endpoints是公开可用的,但受到速率限制。如果你运营大量节点,请联系我们,我们可以为你提供经过身份验证的endpoint,该endpoint的速率限制将最小。

RPC修改

接收到Flashblock会导致节点更新其pending区块的内部内存状态,该状态用于修改某些ETH RPC的响应。

如果你在节点前有一个缓存或路由层,你可能需要修改某些RPC endpoint的行为。可以在here找到endpoint的完整列表。

可靠性

如果Flashblocks基础设施的任何部分发生中断,节点将继续以与今天相同的方式工作,具有两秒的区块时间,并且区块通过P2P网络分发。

我们对Flashblocks正常运行时间的SLA为99.9%。我们设计了我们的基础设施和节点集成,以优雅地处理Flashblock中断并回退到当前的两秒区块时间的情况。

保持联系

我们很高兴看到你使用Flashblocks构建的内容。我们建议关注@base并订阅此blog以接收有关Flashblocks的最新更新。

如有问题或需要支持,请通过Discord@BuildOnBase与我们联系。

附录

我们将交易包含时间衡量为:

  1. 将交易发送到Base

  2. 将交易包含在一个区块中

  3. 将区块共享到网络上的其他节点

  4. 用户获取包含的收据所花费的总时间

你可以使用transaction latency tester重现我们的结果。

通过进行少量内部基础设施改进,我们相信我们可以进一步将交易包含延迟减少80-120毫秒。

  • 原文链接: blog.base.dev/accelerati...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Base 中文
Base 中文
江湖只有他的大名,没有他的介绍。