Solana每周工程更新:性能优化与生态演进

这是关于本周最新 Solana 工程新闻的每周通讯。如果你想每周了解 Solana 技术动态,请关注 @solana_devs 和 @readylayerone 并开启通知。
警告:本通讯绝不会发行代币。请勿相信任何人。
公告
V1 交易即将在 Solana 上线。请阅读升级页面并应用其中提供的指南。多个团队已在为其即将到来的发布做准备。 https://solana.com/upgrades/larger-transaction-sizes
发布
值得注意的功能开关
- 放宽执行后最小余额要求 - 测试网, 开发网
- 将每字节 lamports 设置为 6333 - 测试网
- 升级 BPF Stake 程序至 v5.1.0 - 开发网
- 将区块时间缩短至 300ms - 主网
新版本
- Agave v4.3.0-beta.2
- Firedancer 测试网 v26.08.1, 主网 v26.08.2
- Frankendancer 测试网 v0.1202.40302
- Shipstern v0.8.0
- Solana Kit v8.0.0
- Solana Go v2.0.0
- Address Lookup Table 程序 JS SDK v0.14.0
- Stake 程序 JS SDK v0.9.0
- System 程序 JS SDK v0.14.0
- Memo 程序 JS SDK v0.13.0
- Compute Budget 程序 JS SDK v0.18.0
- Token 程序 JS SDK v0.16.0
- Token-2022 程序 JS SDK v0.16.0
- Loader V3 程序 JS SDK v0.6.0
- Record 程序 JS SDK v0.4.0
- Program Metadata 程序 JS SDK v0.9.0
- ZK Elgamal Proof 程序 JS SDK v0.4.0
- Token Wrap JS SDK v2.7.0
- Token ACL Gate 程序 v0.3.0
- LiteSVM v0.16.0
生态系统工作
SIMDs
有人提议将运行时中的浮点运算替换为整数运算
WTM - 整数运算在计算时具有更可预测的行为,边界情况更少。它们也更简单,因此性能更高。此更改将使运行时获得这些好处。
有人提议更改领导者调度表的实现
WTM - 该提案的目标是保持验证者在周期内分配的领导者槽位数在一个领导者窗口(4个槽位)内。这将使验证者影响链的时间更加紧凑。
有人提议允许停用委托给不再存在的 Vote 账户的 Stake 账户
WTM - 这是一个明显的更改。委托给不再活跃的 Vote 账户的 Stake 应允许其 SOL 以更简单的方式返还。
有人提议禁止从 Nonce 和 Vote 账户进行自我提款
WTM - 一般来说,自我提款行为在 Solana 上是一个明显的错误,应予以避免。这些提案目前仅限于 Nonce 和 Vote 账户,以处理使用它们时的漏洞。
有人发起讨论,要求对交易批次强制执行优先级排序
WTM - 目前,调度器和区块构建服务在链上有各自的区块构建理念。此更改将在槽位内的批次中创建更确定的排序。该提案的目标是在网络上创建一个更可预测的、基于规则的市场结构。
验证器客户端(Agave、Firedancer、Mithril)
Agave 将很快弃用其原始的 TPU 客户端,转而使用 tpu-client-next
WTM - tpu-client-next 是当前向验证器发送交易的服务实现。这将取代旧的 TPU 客户端实现。
Agave 实现了在分叉中不再使用银行状态时的优雅关闭
WTM - 以前,银行仅在准备好记录到账本服务或提交到 accounts-db 时才关闭。此实现在共识期间选择新的银行分叉作为根等情况下执行关闭。
Agave 将全局程序缓存与银行分叉解耦,并改进了其对内置程序的程序缓存,使其在 Core BPF 迁移期间表现更合理。
WTM - 基于之前允许从槽位加载程序的工作,此更改从缓存自身的 Bank 分叉中获取条目。这使得全局程序缓存更快,减少了不必要的操作。这些更改也可能最终允许程序在其被修改的同一槽位中不被禁用。
Agave 强化了其 TPU 客户端 API,以使用 QUIC 流而非 QUIC 数据报
WTM - 使用 QUIC 流向 TPU 发送交易是有意义的,因为顺序很重要,客户端通常会串行发送这些交易。
Firedancer 正在开发一个 X.509 证书验证器服务 和一个无依赖的 TLS 实现
WTM - 此更改确保 Firedancer 的 TLS 实现不依赖其他依赖项。除了更小的软件占用空间外,它还允许与 Agave 在一致性方面进行一对一的匹配。
Firedancer 正在努力支持 Alpenglow 的 奖励、BLS API 使用、Rotor FEC、Rotor 修复响应 和 Alpenglow 页脚
WTM - 在最初的 Alpenswitch 期间,Firedancer 将无法参与。这些更改使其为未来做好准备。
Firedancer 重新实现了其公钥哈希函数
WTM - 这是一项性能更改,允许使用公钥密码学(主要用于 Solana 密钥对)进行更快的加密操作。
RPC 2.0
Yellowstone-vixen 已更名为 shipstern,并已作为 RPC 2.0 计划的一部分加入
WTM - 将交易解析移至 RPC 2.0 意味着这将属于包括 superbank 和 cloudbreak 在内的服务家族。将解析作为 RPC 堆栈的一部分将确保每个人在如何解释 Solana 交易方面保持一致。
Solana 语言客户端(Web3.js、Solana Kit、Kit 插件、Solana SDK、Codama、Solana Go)
Rust Solana SDK 交易 crate 中修复了一个错误,以确保在验证签名之前签名和公钥数量匹配
WTM - 当签名和公钥的长度不匹配且网络允许时,会造成交易可能在未正确签名的情况下被执行的情况。这修复了该错误。
Solana Go 将支持机密转账
WTM - 机密转账是 Token-2022 的一大特色。支持此功能将推动网络上的更多隐私用例。并允许 Go 用户访问此功能。
Solana Go 将整合 Firedancer 的 AVX2 实现
WTM - AVX2 是 X86_64 微处理器架构中的一组指令,允许其更快地执行加密操作。Solana Go 实现此功能将意味着更快的签名验证等。
Solana 程序库(SPL)和 Core BPF
Subscriptions 程序将支持 Token-2022 转账Hook
WTM - 转账是 Subscriptions 程序的核心功能。此更改将允许在转账时使用条件参数,从而扩展订阅功能。
Solana 程序框架(Anchor、Pinocchio、Steel、Quasar)
Anchor 允许其目标二进制文件和日志记录的最小版本
WTM - 这将使 Anchor 用户可以选择在 CI 上谨慎地构建和部署他们的程序。
测试框架(mollusk、litesvm、surfpool)
Surfpool 将允许通过 TLS 连接到 surfnet
WTM - HTTPS/TLS 允许与其他服务进行安全连接。这样做可以保护 Surfpool 用户免受中间人攻击,这是一种常见的安全风险。
其他有趣的事情
@dreamsin_3d 关于他在 solana bpf 上发现的错误

@m_a_zeeshan 创建了一个工具,可以保存所选账户状态的快照,以便用户重新配置和模拟交易

@0xIchigo 在 Helius 博客上发表了一篇关于 LSM 树的文章

@dreamsin_3d 在 sbpfv3 上发现了一个错误,该错误影响与 C 外部系统调用/系统变量访问器的兼容性

@GuiBibeau 制作了一个 Web 应用,以音频和视觉方式展示 200ms 的区块时间听起来和看起来是什么样子

Gui Bibeau e/acc

@GuiBibeau
· 8月22日
随着 @solana 变得更快,其影响是巨大的。
400ms->350ms->...->200ms 对于非开发人员来说很难理解。
这里有一个迷你视听演示来帮助理解。请打开声音!! BLOCKTIME — 区块时间听起来是什么样? 来自 solana-blocktime.vercel.app
@triton_one 发表了一篇关于 Agave v4.2 版本破坏性变更的文章

Triton One
@triton_one
· 8月21日
Agave 4.2 破坏了一些不会报错的东西。了解这对你意味着什么,并查看我们的迁移指南。
- 🤯 交易 v1 激活后失败的 getBlock 调用
- 🤯 新的奖励类型
- 🤯 更少的账户更新
- 🤯 移除 jsonParsed 字段
八点迁移清单: Agave 4.2 破坏性变更:你的迁移清单 来自 blog.triton.one
@MostlyData_ 关于资源和包含费可能产生的影响

Triton One
@triton_one
· 8月21日
Agave 4.2 破坏了一些不会报错的东西。了解这对你意味着什么,并查看我们的迁移指南。
- 🤯 交易 v1 激活后失败的 getBlock 调用
- 🤯 新的奖励类型
- 🤯 更少的账户更新
- 🤯 移除 jsonParsed 字段
八点迁移清单: Agave 4.2 破坏性变更:你的迁移清单 来自 blog.triton.one
@MoneyGram 宣布已启动自己的 Solana 验证器

MoneyGram
@MoneyGram
· 6月22日
五年来,我们一直将区块链融入资金转移方式。今天,我们更进一步。
MoneyGram 🤝 @Solana MoneyGram 现已成为 Solana 上的活跃验证器,并已加入 Solana 开发者平台。

GIF
@solana 发布了一个仪表板,让你可以实时看到区块时间的缩短 https://solana.com/200ms

上周刊

Solana Developers

@solana_devs
· 8月20日

文章
Solana Changelog:8月20日
这是关于过去一周最新 Solana 工程新闻的每周通讯。如果你想了解 Solana 技术动态,请关注 @solana_devs 和 @readylayerone....
- 原文链接: x.com/solana_devs/status...
- 鸿途知科网 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
版权声明
本文仅代表作者观点,不代表区块链技术网立场。
本文系作者授权本站发表,未经许可,不得转载。
鸿途知科网
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。