运行以太坊节点需要复杂的底层基础设施,设置和维护都很麻烦。例如,在以太坊上运行完整节点或存档节点需要相当大的带宽、计算能力、高存储容量等。此外,节点是特定于链的,这意味着您需要为要与之交互的所有链设置所需的基础设施。可以想象,这很快就会成为一个耗时、资源密集且成本高昂的过程。当然,一定有更好的方法,对吧?
幸运的是,您可以使用 Moralis 等 Web3 基础设施提供商绕过运行以太坊节点的所有复杂性。我们通过处理所有底层基础设施来简化运行以太坊节点的过程。作为回报,您只需单击按钮即可有效地设置以太坊节点。因此,如果您是 Web3 开发人员并想学习如何运行以太坊节点,那么本文适合您。让我们开始吧!
什么是以太坊节点?
简而言之,节点是运行以太坊客户端软件的计算机或服务器。以太坊网络由数千个节点组成,这些节点验证交易并共同维护区块链的统一、一致状态!
节点对于以太坊网络至关重要。它们共同执行确保网络稳健性、可靠性和安全性的任务。这些任务包括验证交易、维护整个以太坊区块链的副本以及向网络广播新交易和区块。
节点有多种不同的类型,下面是三个突出的示例:
存档节点:存档节点存储以太坊区块链的完整历史记录,包括交易、智能合约状态等。这些节点包含数 TB 的数据,因此管理和维护成本高昂。然而,尽管维护成本很高,但存档节点对于需要访问历史数据的用户来说至关重要。
全节点:全节点存储最近 128 个区块的最新数据。这些节点对于维护以太坊的完整性和确保所有状态始终保持最新至关重要。
轻节点:轻节点仅下载区块头,这是与以太坊区块链交互所需的最小数据量。它们的设计以效率为重,为只需要基本区块链功能的用户提供经济高效的解决方案。
以太坊节点的使用案例
节点对于以太坊区块链至关重要,它们在生态系统中有很多用例。我们无法涵盖所有内容,但我们将介绍三个突出的例子:
交易验证:您可以运行以太坊节点,以成为验证者。验证者负责存储区块链数据、处理交易以及向区块链添加新区块。
执行交易:运行以太坊节点提供了与网络交互的机会。这包括发起交易和执行智能合约,这是构建 Web3 项目的重要组成部分。
索引和查询链上数据:以太坊区块链本质上是一个庞大的数据库,需要节点来查询和索引链上信息。因此,节点可用于获取区块数据、代币余额、交易等。
如何运行以太坊节点
运行以太坊节点的最简单方法是使用 Moralis – 业界领先的 Web3 基础设施提供商。借助我们提供的节点,您只需单击几个按钮即可设置和运行以太坊节点。如果您想了解如何操作,请在下面加入我们!
您首先需要一个 Moralis 帐户。因此,首先点击 Moralis 主页右上角的“免费开始”按钮并注册:
有了账户后,导航到“节点”选项卡并单击“+创建新节点”:
接下来,选择“以太坊”,然后选择“主网”,然后点击“创建节点”按钮:
最后,复制您新生成的节点 URL 之一并将其集成到您的 dapp 中:
就是这样;与 Moralis 合作时,运行以太坊节点并不一定比这更具挑战性!
教程:如何对你的节点进行 RPC 调用
在学习了如何使用 Moralis 设置和操作以太坊节点后,我们现在将指导您完成使用 ethers.js 库对节点进行 RPC 调用的过程。本简短教程将具体演示如何检索钱包的原生余额!
但是,在我们开始之前,您必须满足一些先决条件。因此,在继续之前,请确保您已准备好以下内容:
Node.js v.14+
Npm/Yarn
接下来,在您喜欢的 IDE 中设置一个新文件夹,并使用以下终端命令初始化一个项目:
从那里,通过在终端中运行以下命令来安装 ethers.js:
然后您可以打开“package.json”文件并添加”type”: ”module”
到列表中:
接下来,创建一个新的“index.js”文件并添加以下代码片段:
然后,您需要YOUR_NODE_URL
用您的 Moralis 节点 URL 进行替换,并配置address
参数以适合您的查询。
接下来,打开终端,cd
进入项目的根文件夹,并运行以下命令来执行脚本:
作为回报,您将获得相关钱包的原生余额。它看起来会像这样:
恭喜;您现在知道如何对您的节点进行 RPC 调用!
节点的局限性
使用 RPC 节点与以太坊网络交互是一种非常有效的选择。但是,它可能并不总是您的最佳选择。让我们通过深入研究节点的一些限制来进一步阐述这一点:
查询复杂:节点查询复杂,可提供的数据有限。例如,您无法向节点询问常见问题,例如“这个钱包里有什么 ERC-20 代币?”。因此,为了获取此信息,您需要发出多个请求并自行拼凑大量数据。
原始数据:节点返回原始区块链数据。因此,在使用之前,您需要完成繁琐的任务,将数据解码、解释并集成为可用的格式。
特定于链:节点是特定于链的,这意味着您需要为与之交互的每个网络设置和维护一个节点。如果您正在构建跨链兼容的 dapp,这可能是一项耗时且资源密集的工作。
那么,我们如何克服与从节点查询链上数据相关的挑战?
好吧,根据您作为开发人员的需求,您最好使用像 Moralis 这样的区块链索引器。借助我们的顶级 API,您只需几行代码即可无缝查询复杂且解码的数据。如果您想了解更多信息,请加入我们的下一节!
查询区块链数据的最简单方法——介绍 Moralis
Moralis 是业界领先的 Web3 基础设施提供商,提供节点和 API。借助我们的 API,您可以无缝简化 dapp 的链上数据集成。在我们的用例特定 API 套件中,您可以找到 Wallet API、Token API、NFT API、Streams API 等。因此,与 Moralis 合作时,您可以毫不费力地构建从去中心化交易所 (DEX) 到投资组合跟踪器的一切!
但是为什么要利用我们的 API 进行链上数据集成呢?
好吧,为了回答上述问题,让我们来探讨一下 Moralis 的好处:
全面:我们的 API 设计以结果为导向,只需调用更少的 API 即可获得更多数据。只需一个端点即可获取复杂的解码数据,让您更快、更高效地构建 dapp。
跨链: Moralis 的 API 是真正的跨链,支持以太坊、Polygon、BNB Smart Chain、Base、Optimism 等网络。因此,利用我们的 API,您可以在所有主要区块链上无缝构建项目。
安全:体验 Moralis 企业级数据安全的黄金标准——唯一获得 SOC 2 Type 2 认证的 Web3 基础设施提供商。
这让您对 Moralis 有了大致的了解。在下一节中,我们将简要介绍我们的五个主要 API!
Moralis Web3 API
在我们一流的开发工具套件中,您将找到十多个特定于用例的 API,这些 API 使 Web3 开发变得轻而易举。下面,我们将介绍五个突出的示例,它们将帮助您更快、更高效地构建 dapp!
钱包 API: Moralis 的钱包 API是业界领先的钱包数据工具。只需一行代码,您就可以无缝获取任何钱包的历史记录、余额、净值、盈利能力等等。使用此 API,您可以获得将钱包功能集成到 dapp 中所需的所有数据。
NFT API: NFT API是用于 NFT 数据的顶级工具,可让您无缝查询最新的元数据、NFT 价格、余额等。如果您想要构建 NFT 市场、Web3 游戏或任何其他基于 NFT 的平台,请务必查看 NFT API。
代币 API: Moralis 的代币 API是 ERC-20 数据的终极工具。只需一行代码,您就可以无缝获取 ERC-20 代币的所有者、价格、元数据等。因此,这是构建代币浏览器或 DEX 等平台的完美工具。
Streams API:使用Streams API,当链上发生重要事件时,您可以通过 webhook 无缝地将实时更新发送到项目后端。它是将警报和通知集成到 dapp 中的完美工具。
市场数据 API:借助市场数据 API,您可以获得对加密货币市场的无与伦比的洞察力。借助开箱即用的端点,您可以查询趋势 NFT 集合、按市值排名前列的 ERC-20 等等。使用最新的市场数据吸引并留住您的用户。
摘要:什么是以太坊节点以及如何设置以太坊节点
从传统角度来看,设置和维护运行以太坊节点所需的基础设施是一个耗时且资源密集的过程。它需要大量的计算能力、存储容量、带宽等。幸运的是,现在您可以通过利用 Moralis 等 Web3 基础设施提供商来避免底层复杂性!
在运行节点方面,Moralis 提供了所有基本基础设施,您只需单击几下即可设置以太坊节点:
步骤 1 – 注册 Moralis。
第 2 步- 登录,转到“节点”选项卡,单击“+ 创建新节点”按钮,然后设置您的节点:
步骤 3——复制你的一个节点 URL 并将其集成到你的 dapp 中:
就是这样;使用 Moralis,您可以在几秒钟内设置并运行以太坊节点!