Mysten Labs 正在向 Sui 开发者社区开放 Sui Gas Pool 的源代码。这项创新服务旨在为 Sui 上的大规模交易提供 Gas 支付,满足具有高并发需求的应用在用户入门方面的重要需求。
Sui 原生支持赞助交易,允许交易使用与发送者不同的地址拥有的 gas 币支付 gas 费用。此功能允许服务商补贴用户的交易成本,从而显著提升 Web3 新用户的入门体验。无需为钱包注资即可开始使用,通过提供更大的灵活性和易用性,显著提升了用户体验。尽管有这些优势,应用程序构建者仍经常难以应对大规模管理 gas 费用的复杂性。
Sui Gas Pool 允许应用程序通过大规模赞助 gas 支付,轻松提供更出色的用户入门体验。此外,Sui Gas Pool 还减轻了处理高度并发交易的应用程序的负担,使它们能够通过高效管理的 gas 赞助来简化运营。
隋气藏的工作原理
Sui Gas Pool 的开发主要考虑了两个目标:水平可扩展性和通用性。该系统可以通过添加更多实例来轻松扩展,以满足更高的吞吐量需求,从而确保能够处理增加的交易量。它还被设计为通用的,允许任何构建者将其作为独立服务或系统的一部分进行集成和操作。
初始化 gas 池时,它会查询赞助者地址拥有的所有用于赞助交易的 gas 币,然后将它们拆分为具有可配置目标初始余额的较小 gas 币。然后,这些 gas 币被添加到管理可用 gas 币和 gas 币预留的 gas 池数据库中。
为 gas 池提供资金非常简单:只需将大量余额 gas 币发送到赞助商地址,gas 池就会自动检测并处理它。为了确保 gas 池内的资金得到维持,系统会定期检查赞助商是否拥有任何大量 gas 币,然后在将其添加到 gas 池之前进行拆分。
气池服务运行一个 RPC 服务器,通过 HTTP 请求中的秘密承载令牌来管理权限控制。交互工作流程如下:
客户端向 Gas 池发送 Reserve_gas 请求,以预留满足指定 Gas 预算的 Gas 币。
客户端将gas币附加到交易中,并获取用户对交易的签名。
客户端通过execute_transaction请求将用户签名的交易发送至gas pool。
气池对交易进行签名,将其发送到完整节点执行,并释放气币。
探索隋气田
Sui Gas Pool 服务通过多种机制实现有效扩展。
自动化 Gas 币分割:自动化 Gas 币分割会创建许多较小的 Gas 币对象,从而提高吞吐量。
受控交易执行:由于 gas 池完全控制交易执行,因此不需要保守的等待启发式方法,确保及时释放 gas 币。
集中式数据持久性:数据持久性通过中央 Redis 存储处理,允许单个天然气池服务器运行而无需本地数据持久性要求或崩溃恢复。这允许应用程序构建者以最小的开销为每个赞助商地址运行尽可能多的天然气池服务器。
多赞助商和服务:通过拥有多个赞助商和部署多个气池服务,系统可以进一步扩展。
开始使用
通过满足这些需求并实施强大、可扩展的解决方案,Sui Gas Pool 显著提升了 Sui 上应用程序的用户体验和运营效率。Mysten Lab 的客户体验平台 Enoki 已经将 Sui Gas Pool 用于其赞助交易功能。通过在 Enoki 中的使用,Sui Gas Pool 在生产环境中展示了其可靠性和效率,凸显了其提升 Sui 上应用程序的用户体验和运营效率的能力。
将 Sui Gas Pool 组件开源可确保整个 Sui 社区能够有效地扩展赞助交易,支持拥有庞大用户群的新应用。
要了解有关 Sui Gas Pool 的更多信息,请访问 GitHub 存储库。如有任何疑问或遇到问题,请随时联系工程师。