Mysten Labs正在向Sui开发者社区开源Sui Gas Pool功能。这项创新服务旨在大规模赞助Sui上交易的gas费,解决高并发需求应用的用户入驻问题。
Sui的原生功能赞助交易,允许交易使用与发送者地址不同的gas coin支付gas费。这一功能允许服务补贴用户的交易成本,大大提升了新用户加入Web3的体验。无需资助钱包即可开始使用的能力显著增强了用户体验,提供了更大的灵活性和易用性。尽管有这些优势,app构建者通常在大规模管理gas费支付的复杂性上面临挑战。
Sui Gas Pool允许apps通过大规模赞助gas费来轻松提供更好的用户入驻体验。此外,Sui Gas Pool减轻了处理高并发交易的apps所经历的负担,使它们能够通过高效管理的gas费赞助简化操作。
Sui Gas Pool工作原理
Sui Gas Pool的开发有两个主要目标:水平可扩展性和通用性。该系统可以通过增加更多实例轻松扩展以满足更高的吞吐量需求,确保能够处理增加的交易量。它还设计为通用的,允许任何构建者将其作为独立服务或其系统的一部分进行集成和操作。
在初始化gas pool时,它会查询所有由赞助者地址拥有并用于赞助交易的gas coins,然后将其拆分为具有可配置初始余额的较小gas coins。这些gas coins随后被添加到gas pool数据库中,该数据库管理可用的gas coins和gas coin预订。
为gas pool提供资金非常简单:只需将一个大额余额的gas coin发送到赞助者地址,gas pool会自动检测并处理它。为了确保gas pool内的资金保持充足,系统会定期检查赞助者拥有的任何大额gas coin,然后在添加到gas pool之前将其拆分。
gas pool服务运行一个RPC服务器,通过HTTP请求中的秘密承载token进行权限控制。交互工作流程如下:
- 客户端向gas pool发送reserve_gas请求以预订符合指定gas预算的gas coins。
- 客户端将gas coins附加到交易并获得用户对交易的签名。
- 客户端通过execute_transaction请求将用户签名的交易发送到gas pool。
- gas pool签署交易,将其发送到完整节点执行,并释放gas coins。
扩展Sui Gas Pool
Sui Gas Pool服务通过多种机制高效扩展。
- 自动gas coin拆分:自动gas coin拆分创建了许多较小的gas coin对象,允许增加吞吐量。
- 控制交易执行:不需要保守的等待启发法,因为gas pool完全控制交易执行,确保gas coin及时释放。
- 集中数据持久性:数据持久性通过集中的Redis存储处理,允许单个gas pool服务器无需本地数据持久性要求或崩溃恢复即可运行。这使得app构建者可以以最小的开销为每个赞助者地址运行尽可能多的gas pool服务器。
- 多个赞助者和服务:系统可以通过拥有多个赞助者和部署多个gas pool服务进一步扩展。
开始使用
通过解决这些需求并实施强大且可扩展的解决方案,Sui Gas Pool大大提升了Sui上apps的用户体验和操作效率。Mysten Lab的客户体验平台Enoki,已经在其赞助交易功能中使用了Sui Gas Pool。通过在Enoki中的使用,Sui Gas Pool展示了其在生产环境中的可靠性和效率,突显了其提升Sui上apps用户体验和操作效率的能力。
将Sui Gas Pool组件开源确保整个Sui社区可以有效地扩展赞助交易,支持拥有大量用户的新apps。
要了解更多关于Sui Gas Pool的信息,请访问GitHub代码库。如有任何问题或遇到问题,请随时联系工程师。
关于Sui Network
Sui是基于第一原理重新设计和构建而成的L1公有链,旨在为创作者和开发者提供能够承载Web3中下一个十亿用户的开发平台。Sui上的应用基于Move智能合约语言,并具有水平可扩展性,让开发者能够快速且低成本支持广泛的应用开发。获取更多信息:https://linktr.ee/sui_apac
官网|英文Twitter|中文Twitter|Discord|英文电报群|中文电报群