---
title: "Arbitrum 节点：你需要了解的一切"
description: "什么是 Arbitrum 节点，如何通过 Arbitrum 节点提供商开始开发"
---

# Arbitrum 节点：你需要了解的一切

[Arbitrum](https://www.alchemy.com/arbitrum) 是 Ethereum 的一个二层扩容方案，旨在使用[乐观汇总](https://www.alchemy.com/overviews/optimistic-rollups)技术解决 Ethereum 交易吞吐量低、交易费用高的扩容难题，同时保持 Ethereum 一层的安全性。

要开始构建 Arbitrum 应用，开发者需要连接到 Arbitrum 节点提供商，或者自行搭建 Arbitrum 节点。本指南将介绍如何使用 Alchemy 可无限扩展的 Arbitrum RPC 节点服务，以及如何开始运行自己的 Arbitrum 全节点。‍‍

## **什么是 Arbitrum 节点？**

Arbitrum 节点是作为 Arbitrum 区块链连接点的计算机，节点之间彼此相互依赖。

要更好地理解 Arbitrum 节点，需要先了解节点是什么、它们在[传播交易](https://www.alchemy.com/overviews/transaction-propagation)中的作用，以及区块是如何被验证的。

交易被提交到一个全局的待处理交易池中，并在被打包进区块之前广播给网络上的其他节点。为了保证公平性，网络中的节点必须就某个区块所包含的交易达成一致（即达成共识），之后该交易区块才能被添加到网络中。节点帮助批准或拒绝区块提案，同时也存储网络的历史交易数据。

## **什么是 Arbitrum 节点提供商？**

[**Arbitrum 节点提供商**](https://www.alchemy.com/overviews/blockchain-node-providers)是一家运行 Arbitrum 节点的公司，让普通用户和开发者无需自行搭建和管理节点，就能向区块链发送和接收请求。

Arbitrum 节点提供商会搭建并维护一个或多个 Arbitrum 节点，然后通过创建一些 API 或 RPC，开放给所有人使用。换句话说，Arbitrum 节点提供商从事的是提供 Arbitrum-node-as-a-service（节点即服务）的业务。

一旦用户获得了 Alchemy 节点提供商的 Arbitrum API 访问权限，就可以实时与 Arbitrum 区块链交互。

尽管[有不少 Arbitrum 节点提供商](https://www.alchemy.com/overviews/blockchain-node-providers)，但 Alchemy 是其中的领先者。本指南接下来会介绍如何接入 Alchemy 的 Arbitrum 节点。

## **自行运行 Arbitrum 节点与使用 Arbitrum 节点提供商有什么区别？**

**自行运行节点需要你安装必要的程序，使你的计算机或设备能够连接到 Arbitrum 主网并对其进行管理；而使用节点提供商则由对方为你管理这些操作。**

因此，自行运行 Arbitrum 节点与使用 Arbitrum 节点提供商之间的主要区别在于节点搭建和维护方面的管理工作。

当你借助 Arbitrum 节点提供商时，相当于把这部分责任交给了第三方。[选择一个可靠的节点提供商](https://www.alchemy.com/overviews/how-to-choose-a-blockchain-node-provider)在前期需要花费一些精力，但之后你就不必再操心维护硬件的问题了。

## **自行运行 Arbitrum 节点会面临哪些挑战？**

**自行运行 Arbitrum 节点面临的挑战包括：需要足够的存储空间、较长的前期准备时间，以及维护全节点所需的带宽。**

不过，如果你考虑自行搭建节点，起初可能会觉得这是个不错的主意。当然，自建节点也确实有其好处。

拥有自建节点意味着你是维护特定链安全性和健康度的直接利益相关方，这使得恶意行为者更难对该链发起攻击。其次，你可以访问链的状态，也就是网络的全部数据。

然而，[自行运行节点的挑战](https://www.alchemy.com/overviews/running-your-own-node)并不总是被人提及，我们在这里加以说明。

### 1. 存储空间

在运行全节点之前，你需要计算机上有较大的存储空间。虽然运行 Arbitrum 节点并没有明确规定所需的空间大小，但在所有区块链网络中，这个范围通常在 200 GB 到 300 GB 之间。

### 2. 搭建时间

当你尝试运行全节点时，你的计算机需要下载区块链的账本，从被挖出的第一个区块一直到一秒前刚被挖出的区块。这总是需要时间的，根据链本身及其他相关因素，可能是几天、几周，最坏情况下甚至是一个月。

### 3. 节点管理

一旦全节点最终搭建完成，就需要对其进行管理——而这正是实际挑战所在。运行全节点非常耗时，不仅因为你需要长时间保持在线，还因为你大部分时间都要跟上升级和调试的节奏。

现在，让我们来看看如何连接到 Alchemy 上的 Arbitrum 节点——Web3 领域首屈一指的节点提供商。

## 如何连接到 Alchemy 上的 Arbitrum 节点

以下是使用 Alchemy 作为节点提供商连接 Arbitrum 节点的分步指南，帮助你[开始在 Arbitrum 上进行开发](http://www.alchemy.com/overviews/how-to-start-developing-on-arbitrum)：

### **步骤 1. 注册 Alchemy**

第一步是[前往 Alchemy 官网](https://dashboard.alchemy.com/signup/)注册并填写一些信息。如果你之前已经注册过，直接登录即可。

<ImageBlock
  src="https://media.alchemy.com/1704093781-alchemy-sign-up-page.jpeg"
  alt="用于创建免费开发者账户的 Alchemy 注册页面"
  width={1600}
  height={798}
  caption="Alchemy 注册页面"
/>

### **步骤 2. 创建一个新的 Arbitrum 应用**

登录后，继续在 Alchemy 上创建一个应用。在这里，选择 Arbitrum 主网。

<ImageBlock
  src="https://media.alchemy.com/1704093808-create-new-arbitrum-app.jpeg"
  alt="Alchemy 控制台：在 Arbitrum 主网上创建新应用"
  width={1600}
  height={383}
  caption="在 Arbitrum 主网上设置节点"
/>

### **步骤 3. 安装 npm 包和 Alchemy SDK**

如果你还没有 [npm 包](https://nodejs.org/en/download/)，接下来会用到它。然后，运行以下命令安装 Alchemy SDK。

<CodeSnippet code={`npm install alchemy-SDK`} language="text" theme="dark" />

### **步骤 4. 连接并向 Arbitrum 主网发起节点请求**

使用 Ether.js 或 Web.js 时，你需要导入 Alchemy SDK 并发起节点请求。粘贴以下命令来导入 SDK：

<CodeSnippet
  code={`import { Network, Alchemy } from 'alchemy-sdk';`}
  language="text"
  theme="dark"
/>

现在，你应该输入你的 [Alchemy Arbitrum API 密钥](https://www.alchemy.com/docs/reference/arbitrum-api-quickstart)来配置对象。要查看你的 API 密钥，请前往 Alchemy 仪表盘，在应用上点击 _view key_。

<ImageBlock
  src="https://media.alchemy.com/1704094572-alchemy-arbitrum-api-key.jpeg"
  alt="Alchemy 控制台：查看 Arbitrum 应用的 API 密钥"
  width={1600}
  height={303}
  caption="Arbitrum 项目的 Alchemy API 密钥"
/>

在你的环境中运行以下命令：

<CodeSnippet code={`

const settings = {
apiKey: <api-key>,
network: Network.ARB_MAINNET,
};
const alchemy = new Alchemy(settings);

alchemy.core.getBlockNumber().then(console.log);`} language="text" theme="dark" />

### **步骤 5. 节点请求分析与报告**

你可以监控请求是否成功以及执行速度——所有信息都会显示在仪表盘上。

<ImageBlock
  src="https://media.alchemy.com/1704094614-arbitrum-node-in-alchemy.jpeg"
  alt="Alchemy 控制台中运行中的 Arbitrum 节点"
  width={1600}
  height={577}
  caption="Alchemy 控制台中运行中的 Arbitrum 节点"
/>

## **如何搭建自己的 Arbitrum 全节点**

如果你想自行搭建并运行 Arbitrum 全节点，可以按照以下步骤操作。

### 步骤 1. 获取 Arbitrum 节点 Docker 镜像

在运行 Arbitrum 节点之前，你需要获取一些依赖项和库，它们都包含在一个 docker 镜像中。

### 步骤 2. 获取一个 Ethereum 节点 RPC 端点

有两种方式可以获得它：使用 [Arbitrum RPC 端点提供商](https://www.alchemy.com/chain-connect/chain/arbitrum-one)，或者自行搭建 Ethereum 节点——后者是完全另一套流程。

如果你想借助 [Arbitrum RPC 节点提供商](https://www.alchemy.com/layer2/arbitrum?a=9e8867d1b6)，可以使用 Alchemy。

<CodeSnippet code={`

--l1.url=<insert your RPC URL here>`} language="text" theme="dark" />

### 步骤 3. 连接到 Arbitrum 主网

设置好依赖项后，你可以运行以下代码，向 Arbitrum 主网发起节点请求：

<CodeSnippet code={`

docker run --rm -it -v /some/local/dir/arbitrum-mainnet/:/home/user/.arbitrum/mainnet -p 0.0.0.0:8547:8547`} language="text" theme="dark" />

此时，如果这些程序在你的计算机上运行不起来，也不必惊慌。目前还没有运行完整 Arbitrum 节点的标准方法。

Arbitrum 背后的团队 Offchain Labs 尚未发布关于如何运行其节点的官方详细文档。

因此，你能否成功运行节点，取决于你的设备兼容程度，以及你对命令行的熟练程度。

### 立即开始运行你的 Arbitrum 节点！

运行 Arbitrum 全节点是一项耗时且耗费资金的工作，对你作为开发者正在进行的工作并没有直接帮助。你需要获得符合硬件要求的设备，等待完整的区块链账本下载完成，然后日复一日地进行管理。

大多数开发者往往会选择跳过这一繁琐过程，转而使用节点提供商的服务。Alchemy 是首选的节点服务提供商，只需点击几下，就能帮你搭建好 Arbitrum 节点！立即开始使用 Alchemy。
