哪个公链提供最轻的全节点客户端?

  • getblock
  • 发布于 2024-09-24 14:23
  • 阅读 12

本文对比了比特币和以太坊的全节点客户端,重点关注其存储需求。比特币的Bitcoin Core客户端需要约600GB空间,而以太坊的客户端选择更多,如Geth、Nethermind、Erigon和Besu,其中Nethermind客户端所需的存储空间最少,约为1TB或更少。选择合适的客户端取决于对数据完整性和计算效率的需求。

文章封面

一个完整的区块链节点 需要一个客户端才能正常运行。它是区块链开发者提供的一个特定软件,用于实现与其他节点的连接,并确保其方法稳定运行。因此,不同的区块链有不同的客户端选项,它们的大小可能因其实现和数据管理策略而异。

在这里,我们将更仔细地研究这些差异,以了解哪个公共区块链为以太坊和比特币提供最轻量级的完整节点客户端,并了解其原因。

公共区块链的完整节点客户端

要了解完整节点客户端是什么,让我们先大致了解一下完整节点的结构。它有两个不同的组成部分:

  1. 完整节点本身 是一台具有强大硬件和稳定互联网连接的计算机,足以处理区块链的完整或修剪后的交易历史记录,具体取决于它是存档节点还是修剪节点。阅读更多关于节点类型的指南
  2. 客户端软件 是一种特定于区块链的服务,可确保区块链的正常运行,包括交易、方法和共识参与。

虽然交易历史记录使节点能够保持、更新和同步区块链的状态,但客户端会执行区块链中编码的所有功能。因此,区块链节点需要客户端来执行所有区块链操作,例如验证或将 dApp 连接到链。

“Full_node_client_block_sync_illustration”

对于以太坊,尤其有很多完整节点客户端。它拥有广泛的 L2 rollup 网络,例如 Polygon,以及建立在其上的 dApp,因此对此类客户端的需求很高。其他链也有客户端,但这里我们将介绍最流行的客户端。

不同区块链的最轻量级完整节点客户端

所有流行的区块链都占据很大的磁盘空间。这很容易理解为什么。

区块链记录其所有交易,并将其加密到区块中。随着每次新交易,区块被填满,并创建新的区块。因此,使用得越多,它就变得越大。随着人们发送资金、签署合约、执行程序和执行其他操作,它会不断增长。

例如,人们可以看到比特币的大小如何随着时间的推移而变化。

“Bitcoin_transactions_information_block_disk_space_size”

来源:Statista

现在让我们关注特定的完整节点客户端及其实现。

比特币

截至 2024 年 9 月,比特币的大小略低于 600 GB。其官方客户端 Bitcoin Core 需要 600 GB 才能运行,并且每个月需要额外的 10 GB 才能监督区块链的增长。它应该用于运行完整节点并为比特币网络做出贡献,并且它是比特币基金会提供的唯一官方客户端。

它还有其他由爱好者开发的节点客户端。虽然它们可能更轻,但它们非常古怪,并且没有得到广泛使用。

以太坊

以太坊的大小更大,因为它是可编程的,并且记录了由其以太坊虚拟机(EVM)执行的智能合约。因此,由于大量的 dApp 和交易,它的记录增长速度比比特币的快。

在 2024 年 9 月,完整节点大约为 1 TB,但如果我们需要覆盖其所有历史状态,则大小可能会显着增大,最高可达 15 TB。在深入研究其客户端之前,重要的是要记住它的两个层:共识和执行。前者使用验证来维护网络,而后者执行智能合约并与 dApp 连接。与比特币不同,有不同的客户端用于运行完整节点,每个客户端都有其特性,并且它们具有不同的磁盘大小。

想了解更多关于以太坊层和功能的信息吗?阅读指南!

其最广泛使用的执行客户端是 Go-Ethereum (Geth),它需要高达 12 TB 的磁盘空间,尽管通常 2-4 TB 就足够了。另外两个,NethermindErigon,效率更高,因为它们会修剪存档节点并分发其数据,因此 Erigon 需要 2-3 TB,而 Nethermind 需要 1 TB。另一个流行的选项 Besu 需要 1-2 TB。

虽然 Geth 能够实现尽可能完整的功能,使用 Go 编程语言,但 NethermindErigon 在速度和效率方面得到了更好的优化。至于 Besu,它使用 Java,并针对使用区块链的商业软件解决方案进行了优化。人们可以在下面看到它们的使用统计数据。

“Ethereum_consensus_execution_clients_comparison”

来源:Client Diversity Ethereum

至于共识客户端,PrysmLighthouse 是最常用的,并且两者都需要大约 1-2 TB 的磁盘空间。Teku 更轻,通常需要小于 1 TB。如果磁盘空间和 RAM 足够,它们可以与执行客户端一起运行,或者在单独的计算机上运行以获得更好的性能。选择主要取决于哪种编程语言更适合每个特定实现,尽管 Teku 是其中最轻的。

请参阅下面的摘要:

Geth Nethermind Erigon Besu Prysm Lighthouse Teku
执行层 执行层 执行层 执行层 共识层 共识层 共识层
2–12 TB 1 TB 或更少 2–3 TB 1–2 TB 1–2 TB 1–2 TB 1 TB
Go C# Go Java Go Rust Java

所有数据均来自验证者和节点用户的公开证据。

因此,以太坊的共识层和执行层都有不同的客户端,并且根据它们的实现方式,它们的大小可能会有所不同。总的来说,运行其客户端需要 2-4 TB 的可用磁盘空间,并且可以优化到小于 1 TB,而完整的功能需要高达 15 TB。

哪个公共区块链提供最轻量级的完整节点客户端?

对于不同的网络,与其他网络相比,有些解决方案更轻量级。区别在于其数据管理和修剪机制。一些客户端通过修剪节点来组织区块链数据,从而在不失去与区块链通信和同步其数据的能力的情况下减小其大小。这可以在以太坊客户端的示例中看到,其中大小变化很大,从小于 1 TB 到大于 10 TB。

最轻量级的以太坊完整节点执行客户端是 Nethermind,它需要小于 1 TB 才能运行。至于共识客户端,差异较小,最轻的客户端 Teku 也需要大约 1 TB。对于比特币,Bitcoin Core 需要超过 600 GB 的空间,并且它是唯一的官方客户端。

选择完整节点客户端取决于其目的。如果需要探索和分析区块链的历史记录,则需要存档数据。在其他情况下,轻量级解决方案更容易运行并且在计算上效率更高。因此,智能数据管理和完整节点修剪是使用客户端软件优化区块链交互的好策略。

GetBlock 为比特币、以太坊和 50 多个其他区块链提供节点服务,这比运行你自己的节点更节省时间。你可以根据所需的计算能力选择共享、专用或企业解决方案,并且你只需为你的区块链请求付费!立即注册,选择你的计划,并随着你的成长而扩展。

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

0 条评论

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