本文介绍了以太坊节点,包括其定义、在Web3中的重要性、不同类型(轻节点、全节点和存档节点)以及运行节点的难点。文章还探讨了扩展以太坊节点所面临的挑战,并提出了使用节点即服务(Node-as-a-Service)的解决方案,最后推荐了Alchemy的Supernode基础设施。
由Alchemy撰写
发布于 2022 年 4 月 18 日,阅读时长 5 分钟
以太坊节点简单来说就是任何运行连接以太坊网络所需软件的计算机。节点之间相互连接,来回发送信息,以验证交易并存储关于区块链状态的数据。
虽然这些术语经常互换使用,但这些连接的计算机是节点,它们运行的软件被称为客户端。
节点构成了区块链网络,并且是访问它的唯一方式。
每个节点都维护着自己的区块链副本,并努力确保此副本与其他所有节点及其各自的副本相符。任何时候你做任何事情,并且需要将新区块添加到区块链时,网络上的每个节点都必须处理它。
每个节点根据其签名和交易的有效性选择接受或拒绝最新的区块。如果该区块被接受,那么它将继续与其他节点共享,直到达成共识并且它们都同步为止。节点能够快速拒绝无效区块并识别试图破坏规则的恶意节点。正是这种不断通信的节点网络使得无需依赖单一的信息来源以及随之而来的所有问题成为可能。
不同节点之间的这种共识使得区块链网络去中心化,并且是 Web3 的支柱。运行的节点越多,区块链就越强大!
节点有三种类型:
轻节点
全节点
存档节点。
轻节点 仅下载区块头,这是它在网络上进行交易所需的最小数据量。 轻节点 可以验证交易,因为它能够使用这些数据重新生成它需要检查的特定区块。
这使得 轻节点 能够有效地与网络交互,并节省兆字节的带宽和千兆字节的存储空间。因此, 轻节点 可以在具有有限内存资源的日常设备上运行,例如智能手机和笔记本电脑。
但是 轻节点 也有其局限性。 轻节点 有时需要向全节点请求它们没有访问权限的数据,这可能比全节点验证交易花费更长的时间。
虽然 轻节点 是运行节点的最简单方法,但仍然需要时间和技术知识来安装客户端、配置变量、下载区块头并检查以确保一切运行平稳。
全节点拥有验证网络上区块正确性所需的一切。它可以与任何智能合约交互并部署自己的智能合约。
全节点 拥有验证网络上区块正确性所需的一切。它可以与任何智能合约交互并部署自己的智能合约。
对数据的完整使用和存储意味着全节点需要更多的计算和带宽资源。 全节点 下载、存储和验证完整的区块链状态——从第 0 个区块到最新的区块(超过 1000 万个并且还在增加),这可能需要几周的时间才能同步!
存档节点 比全节点更进一步。虽然全节点会修剪掉它不再需要验证的条目,即与链的最新交互,但存档节点会维护一切(数万亿字节的额外数据)。这些细节对于更有效地查询信息非常有用,并且对于一些应用程序来说很方便,但在大多数情况下都是过度的。
启动并运行一个节点可能是一个漫长而具有挑战性的过程。如果你是 Web3 世界的新手并且没有技术专长,则尤其如此(至少,尚未)。
仅全节点同步到区块链当前状态的所有 1000 万+ 节点可能需要数周的时间,这可能会让许多人放弃在该领域构建。
成本也是一个因素,而且它们可能会迅速增加。这些包括购买硬件的高额初始投资以及电力和服务器托管的持续成本。在运行节点时,你还必须确保它始终在运行。网络延迟、停电或硬件问题可能会导致代价高昂的停机时间。
虽然客户端更新有助于不断提高以太坊的可扩展性、安全性和可持续性,但这些更改可能会导致意外问题。当你尝试构建更大的东西时,问题 真正开始出现!
以太坊节点从未真正设计为扩展到这种请求级别,并且可能会带来一些独特的挑战。
某些请求会要求节点查询从日志 0 到当前区块的所有内容,并且可能会超时。这些“死亡查询”可能会使节点崩溃,并且可能在一天中的任何时间发生。即使像标准节点一样,节点的可靠性为 72%,这也意味着应用程序一年中可能会离线一百多天!
扩展节点基础设施可能很棘手。想象一下,你正在构建的应用程序在 Twitter 上一夜之间爆红,但你正在运行的现有节点无法跟上流量和交易量突然激增的需求。
你无法快速启动新节点,因为它们需要数周的时间才能同步。最重要的是,新的需求可能会压垮你现有的节点并导致它们崩溃。这可能会导致停机,没有人可以使用你的应用程序,并且不开心的用户会认为他们无法依赖你构建的内容!
在 Web2 中,网站能够通过使用负载均衡器来解决这些可扩展性问题,负载均衡器是一个位于顶部的网络层,可在不同的服务器之间分配流量。但这对于节点来说是不可能的,因为区块链是异步的。虽然两个节点最终应该共享一个相同的最新区块,但在任何给定时间,一个节点可能会落后于另一个节点。
负载均衡可能会导致两个截然不同的结果,因为流量会通过对最新区块具有不同观点的不同节点进行路由。想象一下购买了你梦寐以求的 NFT,然后刷新页面却发现它似乎消失了!
试图避免这些数据不一致会导致开发团队拼凑复杂的变通方法,这些变通方法不可避免地会导致错误并使他们的应用程序崩溃。所有这些问题意味着,在处理节点时,开发人员通常必须在扩展、保持可靠性或确保数据一致性之间做出选择,这会导致对每个人来说都不太理想的体验。
如果这一切看起来有点让人不知所措,请不要担心!无论你是刚开始还是认为你在节点问题上花费了太多时间和金钱,那么节点即服务可能是你的解决方案。
像 Alchemy 这样的节点提供商运行节点,因此你可以专注于开发你的应用程序。集成大多数提供商非常容易——通常只是一个 API,可以开始在区块链上进行读取和写入。
这意味着你无需自己支付服务器访问费用、满足硬件要求和维护状态,而是可以使用 Alchemy 的 Supernode 基础设施…
…只需一行代码。
Alchemy 能够通过专有的协调器服务和一流的可靠性来确保超强的数据正确性。他们通过一个专用的分布式系统来实现这一点,让你可以快速无缝地扩展,从而帮助你构建得更好、交付得更快。
“使用你自己的节点或容易出错的服务意味着将数百个宝贵的工程时间浪费在与你公司无关的问题上。没有什么能与 Alchemy 令人惊叹的可靠性、速度和支持相提并论。”- Alex Atallah,OpenSea 首席技术官
领先的区块链公司和项目,如 OpenSea、Dapper Labs、0x、Royal、Axie Infinity 以及数百家公司都选择 Alchemy,因为我们具有极高的可靠性、传奇般的客户服务以及令人惊叹的产品套件,这些产品使在 Web3 中构建比以往任何时候都更容易。
注册一个 Alchemy 帐户 并立即开始构建,而无需担心节点!如果你有兴趣了解更多关于 Alchemy 如何在你构建 Web3 之旅中为你提供帮助的信息,请查看我们的 Alchemy 入门 文档,并通过我们的 Alchemy Discord 全天候 24 小时与我们联系。
Supercharged | Alchemy | Substack
在链上构建任何东西 获取你的 API 密钥
📚 目录
分享:
\
\
基础设施\
\
什么是 RPC 节点?\
\
关于用于链上构建的 RPC 节点,你需要了解的一切
\
\
基础设施\
\
如何在 2025 年创建私有 RPC 端点\
\
什么是私有 RPC 节点和端点?如何在 2025 年创建私有 RPC 端点。
\
\
基础设施\
\
12 大区块链节点提供商\
\
探索用于链上构建的最佳区块链节点基础设施提供商。
Alchemy 将最强大的 web3 开发者产品和工具与资源、社区和传奇支持相结合。
- 原文链接: alchemy.com/overviews/wh...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!