通告 | Geth 1.9.0 发布!性能全面提升

曾汨   |     |   3321 次阅读

编者注:“以太坊客户端” 一般指的是一套软件,可用于帮助用户在计算机上下载以太坊区块链(即以太坊历史上的交易记录)并参与到以太坊网络中,与网络中的其它计算机达成共识、保持同步(即对最新的交易记录达成一致)。到目前为止,以太坊 1.0 有多种客户端软件,包括 Geth、Parity·Ethereum、cpp-ethereum 等。

Geth 客户端的 1.9.0 版本开发了很长时间,可喜的是,长时间的开发换来的是以太坊客户端性能的全面提升。Geth 1.9.0 版本发布后,受到广泛的好评。下面这条长推特即是 Lefteris Karapetsas 给 Geth 1.9.0 写的凝练版更新说明。

👇长推特,接招!

1/X: #ethereum geth v1.9.0 刚刚发布了。该版本包含了大量的更新。但是发布帖(https://blog.ethereum.org/2019/07/10/geth-v1-9-0/)太长了,可能很多人都直接跳过不读了。那么我在这里写一个总结性的帖子给你们。

2/X:性能得到全面提高。LevelDB 的 GO 语言实现,账户/存储树(trie)的访问模式,EVM 代码的分析和优化、数据库模式的分析和优化,这些是全方位的性能提升。

3/X:快速同步(Fast Sync)基准测试
在 4 小时 8 分钟内完成同步(比 v1.8.27 快 7 小时 12 分钟)
所占硬盘大小:131GB(比 v1.8.27 少 45GB)

4/X:完全同步(Full Sync)基准
在 6 天 8 小时 7 分钟内完成同步(与 v1.8.27 类似,但仅使用了 1/3 的内存,且消除了虚假内存峰值(spurious memory peaks))
所占硬盘大小:303GB(比 v1.8.27 少 38GB)

5/X:Archive 节点同步基准
在 13 天 19 小时内完成同步(比 v1.8.27 快大约 59 天!!!)
所占硬盘大小:2.32TB(比 v1.8.27 少 0.25TB)

6/X:Freezer(冷藏室)
数据库现在分为两部分:
1. 最近的区块和状态保存在 LevelDB 的快速键值存储中。适合 SSD。
2. 3 个轮次(epoch)以前的区块和收据被移动到定制的冷藏室数据库中,不会被频繁访问。适合 HDD。

7/X:GraphQL
引入了一种全新的基于 GraphQL 的节点查询接口。使用 GraphQL,用户可以只查询他们需要的数据,同时仍保持计算和数据传输的开销最小化。

8/X:额外的硬件钱包支持

9/X:Geth 现在支持 status keycard
@ethstatus keycard 自带加密系统,且能被当做借记卡或其他 POS 系统使用。

10/X:Clef
Clef 是一个独立的交易签名器。 Clef 背后的思想是将帐户管理与其他客户端功能分开。它通过 IPC 或 HTTP 暴露了一个轻巧的 API,因此可被许多其它项目用作签名工具。

11/X:你可以在 1.9.0 发布帖上了解到很多关于 Clef 的信息,但我认为 Clef 中最神奇的功能,就是它使用加密键值存储和 Javascript 规则引擎实现了无口令签名甚至自动确认!!

12/X:Geth v.1.9.0 附带一个超轻型客户端:hackmd.io/@GMFZzCl1SH6s2 … 。这是一条介于可信服务器和轻服务器之间的中间道路,它使用了来自一组可信服务者的多数签名来替代 PoW 验证。

13/X:轻客户端的硬编码检查点如今被链上预言机所取代。轻客户端现在可以向轻服务器请求检查点,轻客户端会负责询问链上预言机获得最新检查点。

14/X:Geth 对其所有子系统和事件的监控都得到了重塑和升级。你可以手动配置自己的节点要采用哪些指标、如何暴露出这些数据以及它们如何呈现。阅读文章了解更多细节。

15/X:从 geth v.1.9.0 开始,Puppeth 私有网络部署工具将整合一个网络浏览器!它本质上就是 @poanetwork 做的 BlockScout 资源管理器。

16/X:这篇文章(指 1.9.0 发布帖)还提到,他们正在开发一个全新版本的以太坊节点发现协议,使其能适应当前我们拥有多个网络、分叉、非存档节点以及其它事物的状态。
https://github.com/ethereum/devp2p/blob/master/discv5/discv5.md

17/X:在新的发现协议准备就绪并推出之前,geth v1.9.0 向旧的发现协议提供了两个 ENR 扩展:
1.可以同时支持两种版本的 IP 协议
2.节点现在可以公布其链的配置,以增加可发现性

18/X:自从 Frontier 推出以来,首次推出了一套新的以太坊网络启动节点!

19/X:你可以在文章或更改日志中读到更多细微的更改。对我而言,这个版本不亚于是 #ethereum 生态系统和路线图的一个新里程碑。

20/X:将荣誉献给 @peter_szilagyi @mhswende @nicksdjohnson @realLedgerwatch @zsfelfoldi @gballet Felix Lange,Matthew Hallpern,Guillaume Ballet,Andrea Franz,Gary Rong,Maxim Krasilnikov,Ayrat Badykov,Frank Szendzielarz,Andrei Maiboroda,Antoine Toulme,Age Manning,Tomasz Stańczak

21/X:…以及其他贡献者!顺带说一下,如果以上任何一个人有Twitter账号,请关注他们❤️🙏


原文链接: https://twitter.com/LefterisJP/status/1149370368068587520
作者: Lefteris Karapetsas
翻译&校对: 曾汨 & 阿剑


你可能还喜欢:

引介 | 什么是轻客户端,为什么我非得在乎它?
科普 | 如何通过私钥创建以太坊钱包地址?
洞见 | 公链的根基

 
0 人喜欢