---
title: "Google Cloud Blockchain Node Engine 替代方案：如何切換至 Alchemy"
description: "Google Cloud Blockchain Node Engine 將於 2026 年 12 月 15 日停止服務。只需更換 URL 即可切換至 Alchemy，保留現有程式碼，並以一組金鑰使用 100 多條鏈。"
---

# Google Cloud Blockchain Node Engine 替代方案：如何切換至 Alchemy

<ImageBlock
  src="https://media.alchemy.com/blog/google-cloud-blockchain-node-engine-alternative-hero.png"
  alt="從 Google Cloud Blockchain Node Engine 遷移至 Alchemy 的標題卡"
  width={1920}
  height={900}
  priority
/>

Google Cloud 將於 2026 年 12 月 15 日終止 Blockchain Node Engine 及其共用的 Blockchain RPC 服務。切換至 Alchemy 只需更換 URL，不必重寫程式。你只要替換端點與 API 金鑰，相同的 JSON-RPC 呼叫就會回傳相同的資料。

這次切換也會改變你需要負責的範圍。Blockchain Node Engine 提供的是三條鏈上的節點，按小時計費。我們則提供一組可在超過 100 條鏈上使用的 API 金鑰，無需佈建或升級任何節點。本指南涵蓋如何取得端點、如何把尋找與取代的工作交給程式碼代理、你在 Google Cloud 上的各項設定分別對應到什麼、如何證明新端點回傳完全相同的資料，以及兩者的成本比較。

## 12 月 15 日會有什麼改變？

根據 Google 的 [Blockchain Node Engine 停止服務公告](https://docs.cloud.google.com/blockchain-node-engine/docs/release-notes)，Google 將於 2026 年 12 月 15 日刪除所有剩餘的 Blockchain Node Engine 節點與 Blockchain RPC 端點，之後對它們發出的任何請求都會失敗。在那之前，你也已無法建立新的節點或端點。如果節點同步落後，或你的流量成長，就只能在其他供應商那裡解決。

Blockchain Node Engine 曾為 Ethereum（主網，以及 Sepolia、Holesky 和 Goerli 測試網）、Polygon PoS 和 Solana 運行節點，Blockchain RPC 則服務 Ethereum。我們已支援上述每一條鏈，因此你目前在 Google Cloud 上運行的每個工作負載，在 Alchemy 上都有對應的端點，列於下方的對應章節。

離開時有一個帳單細節很重要。Blockchain RPC 端點會由 Google 自行移除，但 Blockchain Node Engine 節點必須由你在 Google Cloud 主控台中刪除，在刪除之前它們會持續計費。

請把 12 月 15 日視為這些 URL 停止運作的日子，並以提前數週將正式環境流量移出為目標。

## 如何取得 Alchemy 端點？

在 [Alchemy 儀表板](https://dashboard.alchemy.com/)註冊、建立一個應用程式，並啟用你在 Google Cloud 上使用的網路。每個網路都有自己的 URL，而同一個應用程式的 API 金鑰可在所有網路上使用。

如果你偏好留在終端機中操作，[Alchemy CLI](/agents) 只需幾個指令就能完成登入、建立應用程式並發出第一個測試呼叫：

<CodeSnippet
  language="bash"
  code={`npm i -g @alchemy/cli@latest
alchemy auth                                  # browser sign-in
alchemy app create --name gcp-migration --networks ETH_MAINNET
alchemy app select <app-id>                   # use the new app's key
alchemy evm block latest -n eth-mainnet       # confirm the endpoint answers`}
/>

在沒有瀏覽器的遠端伺服器上，請改用 `alchemy auth login --device-code`。`alchemy app chains` 會列出所有其他可加入該應用程式的網路識別碼，例如 Polygon 和 Solana。

## 程式碼代理能幫你完成遷移嗎？

可以，而且當端點 URL 散落在多個服務與設定檔中時，這是最快的做法。我們提供三項工具，讓程式碼代理（Claude Code、Cursor、Codex 或類似工具）取得所需的一切：

- [Alchemy CLI](/docs/alchemy-cli) 負責執行指令：建立應用程式、設定允許清單，以及對各網路發出測試呼叫。
- [Alchemy Agent Skills](/docs/alchemy-agent-skills) 讓代理了解我們的端點格式、方法與 CLI 用法。使用 `alchemy install skills` 安裝。
- [Alchemy MCP server](/docs/alchemy-mcp-server) 讓代理能直接存取 100 多個網路的鏈上資料，因此它在工作時可以查詢你正在遷移的網路。它託管於 `https://mcp.alchemy.com/mcp`，並以你的 Alchemy 帳號登入，因此不需要貼上 API 金鑰。使用 `alchemy install mcp` 新增，或在 Claude Code 中執行：

<CodeSnippet
  language="bash"
  code={`claude mcp add alchemy --transport http https://mcp.alchemy.com/mcp`}
/>

在 Claude Code 上，[適用於 Claude Code 的 Alchemy 外掛程式](/docs/alchemy-claude-plugin)可一步安裝這些 skills 與 MCP server，而[使用 Alchemy 設定 Claude Code](/blog/setup-claude-code-with-alchemy) 則逐步說明設定流程。

接著，在儲存庫的根目錄給代理類似以下的提示詞。它會先收集你的相關資訊，並在修改任何檔案之前等待你的核准：

<CodeSnippet
  language="text"
  code={`I'm moving this project off Google Cloud Blockchain Node Engine and Blockchain RPC, which shut down on December 15, 2026. The new provider is Alchemy. Use the Alchemy CLI, Alchemy skills, and the Alchemy MCP server.
Before changing anything, ask me:
- which networks we run on, and whether any Google Cloud node was an archive node
- where our secrets live (env files, a secrets manager, CI variables)
- whether the new Alchemy app needs IP or origin allowlists
Then find every Google Cloud blockchain endpoint and every use of the Google API key (X-goog-api-key headers or ?key= parameters) across code, config, CI, Docker, and infrastructure files. Show me the list with file paths and wait.
After I approve, replace each endpoint with an environment variable that holds the Alchemy URL for that network, remove the Google key handling, and add placeholder entries to .env.example. Never commit a real API key.
Finally, run eth_chainId and eth_blockNumber against every migrated network with the Alchemy CLI and report the results.`}
/>

最後你只需要審閱一份清單和一份 diff，而不必親手搜尋每個儲存庫。如果你偏好手動修改，工作內容也一樣：搜尋 Google 端點的主機名稱與 API 金鑰，為每個網路換上 Alchemy URL，並移除金鑰標頭或查詢參數，因為我們的金鑰位於 URL 路徑中。也別忘了檢查端點常藏身的地方，例如 CI 變數、Terraform 與排程工作。

## 你在 Google Cloud 上的各項設定分別對應到什麼？

大部分項目都是一對一對應，還有幾項工作會完全消失。

<EmbeddedTable
  table={{
    columns: [
      { key: "1", width: 320, title: "在 Google Cloud 上", dataType: "object" },
      { key: "2", width: 320, title: "在 Alchemy 上", dataType: "object" },
    ],
    data: [
      {
        "1": {
          title: "<p>Blockchain RPC 共用端點（僅限 Ethereum）</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>100 多條鏈中任一條鏈的 RPC API 端點</p>",
          tooltip: "",
          icon: "",
        },
        id: 0,
      },
      {
        "1": {
          title: "<p>Blockchain Node Engine 全節點</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>同一網路的標準端點，無需運行節點</p>",
          tooltip: "",
          icon: "",
        },
        id: 1,
      },
      {
        "1": {
          title: "<p>Blockchain Node Engine 封存節點</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>同一個標準端點，也提供歷史狀態</p>",
          tooltip: "",
          icon: "",
        },
        id: 2,
      },
      {
        "1": {
          title: "<p>用於單租戶隔離的專屬節點</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>Alchemy Dedicated Clusters</p>",
          tooltip: "",
          icon: "",
        },
        id: 3,
      },
      {
        "1": {
          title: "<p>放在標頭或查詢參數中的 Google Cloud API 金鑰</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>位於 URL 路徑中的 API 金鑰</p>",
          tooltip: "",
          icon: "",
        },
        id: 4,
      },
      {
        "1": {
          title: "<p>API 金鑰限制與 VPC Service Controls</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>每個應用程式各自的 IP 與來源允許清單</p>",
          tooltip: "",
          icon: "",
        },
        id: 5,
      },
      {
        "1": {
          title: "<p>Goerli 與 Holesky 測試網</p>",
          tooltip: "",
          icon: "",
        },
        "2": { title: "<p>Sepolia 與 Hoodi</p>", tooltip: "", icon: "" },
        id: 6,
      },
      {
        "1": {
          title: "<p>每次硬分叉前的節點升級</p>",
          tooltip: "",
          icon: "",
        },
        "2": { title: "<p>由我們處理</p>", tooltip: "", icon: "" },
        id: 7,
      },
    ],
  }}
/>

我們的 [RPC API](/rpc-api) 涵蓋共用端點，以及全節點與封存節點的使用情境。如果你選擇 Blockchain Node Engine 是為了單租戶隔離，[Alchemy Dedicated Clusters](/dedicated-clusters) 可提供專為你的工作負載保留的容量，而[如何在 Node RPC 與 Dedicated Clusters 之間做選擇](/overviews/dedicated-vs-shared-nodes)則說明了何時值得這麼做。允許清單可以在儀表板中設定，也可以透過 CLI 使用 `alchemy app ip-allowlist` 與 `alchemy app origin-allowlist` 設定。

以下是 Blockchain Node Engine 所支援每個網路的端點，以環境變數的形式列出：

<CodeSnippet
  language="bash"
  code={`# Ethereum
ETH_MAINNET_URL=https://eth-mainnet.g.alchemy.com/v2/<your-key>
ETH_SEPOLIA_URL=https://eth-sepolia.g.alchemy.com/v2/<your-key>
ETH_HOODI_URL=https://eth-hoodi.g.alchemy.com/v2/<your-key>
ETH_MAINNET_BEACON_URL=https://eth-mainnetbeacon.g.alchemy.com/v2/<your-key>
# Polygon PoS
POLYGON_MAINNET_URL=https://polygon-mainnet.g.alchemy.com/v2/<your-key>
POLYGON_AMOY_URL=https://polygon-amoy.g.alchemy.com/v2/<your-key>
# Solana
SOLANA_MAINNET_URL=https://solana-mainnet.g.alchemy.com/v2/<your-key>`}
/>

若要使用 WebSockets，請將 `https://` 換成 `wss://`。Beacon 端點適用於過去在 Ethereum 節點上查詢共識層的團隊。

有幾個網路細節值得確認。Goerli 的流量改到 Sepolia，Holesky 的流量改到 Hoodi（我們也仍然提供 Holesky）。在 Polygon 上，如果你曾在封存節點上以特定 tracer 呼叫 debug 方法，請在我們的 [Debug API](/docs/reference/debug-api-quickstart) 文件中確認該 tracer。在 Solana 上，標準 JSON-RPC 方法可在我們的端點上照常運作；若需要即時資料，[Solana gRPC 串流](/solana-grpc)可取代輪詢。

## 如何證明新端點回傳相同的資料？

在移轉任何正式環境流量之前，先執行一次一致性檢查。以下腳本會從兩個供應商讀取同一個已最終確定的區塊與同一筆歷史餘額，並比較結果。它使用 [viem](https://viem.sh/)，但任何 JSON-RPC 用戶端都適用。

<CodeSnippet
  language="typescript"
  code={`import { createPublicClient, http } from "viem";
import { mainnet } from "viem/chains";
const { GCP_ETH_RPC_URL, GCP_API_KEY, ETH_MAINNET_URL, CHECK_ADDRESS } = process.env;
// Fail fast: viem's http() silently falls back to a public RPC when the URL is undefined.
if (!GCP_ETH_RPC_URL || !ETH_MAINNET_URL || !CHECK_ADDRESS) {
  throw new Error("Set GCP_ETH_RPC_URL, ETH_MAINNET_URL, and CHECK_ADDRESS first");
}
const address = CHECK_ADDRESS as \`0x\${string}\`;
const google = createPublicClient({
  chain: mainnet,
  transport: http(GCP_ETH_RPC_URL, {
    fetchOptions: { headers: { "X-goog-api-key": GCP_API_KEY ?? "" } },
  }),
});
const alchemy = createPublicClient({
  chain: mainnet,
  transport: http(ETH_MAINNET_URL),
});
async function main() {
  // 64 blocks back is past Ethereum finality, so both sides must agree.
  const head = await alchemy.getBlockNumber();
  const blockNumber = head - 64n;
  const [a, b] = await Promise.all([
    google.getBlock({ blockNumber }),
    alchemy.getBlock({ blockNumber }),
  ]);
  console.log(\`block \${blockNumber} hash match:\`, a.hash === b.hash);
  // Archive check. Skip this part if your Google Cloud node was a full node.
  const oldBlock = 15_000_000n;
  const [balA, balB] = await Promise.all([
    google.getBalance({ address, blockNumber: oldBlock }),
    alchemy.getBalance({ address, blockNumber: oldBlock }),
  ]);
  console.log(\`balance at block \${oldBlock} match:\`, balA === balB);
}
main();`}
/>

針對你遷移的每個網路執行此腳本，並使用你的應用程式實際會查詢的地址。若已最終確定的區塊出現雜湊不一致，代表某處設定錯誤，通常是網路 URL 填錯了，請先修正再繼續。

檢查通過後，透過功能旗標或加權路由分階段移轉流量，並在 12 月之前保留 Google Cloud 端點作為備援。[如何在 RPC 供應商之間零停機遷移](/blog/migrate-between-rpc-providers-zero-downtime)詳細說明了分階段切換的做法，包括在遷移後保留一個[備援 RPC 端點](/overviews/alternative-rpc-endpoint)。流量完全切換後，請在 Google Cloud 主控台中刪除你的 Blockchain Node Engine 節點，以停止計費。

## 切換後可以從技術堆疊中移除哪些東西？

Blockchain Node Engine 提供的是原始節點，因此 JSON-RPC 之上的一切，都是你的團隊自行撰寫與維護的程式碼。更換供應商正是淘汰其中一部分的好時機。

- **交易歷史索引器**。如果你透過掃描區塊或 log 來重建某個地址的歷史紀錄，[Transfers API](/docs/reference/transfers-api-quickstart) 只需一次呼叫就能回傳這些歷史，無需自行為鏈建立索引。
- **輪詢存款的迴圈**。透過輪詢新區塊來捕捉入帳轉帳的程式碼，可以改用 [Address Activity webhooks](/docs/reference/address-activity-webhook)，每個 webhook 最多可為 100,000 個地址推送轉帳事件。
- **逐鏈佈建**。在 Blockchain Node Engine 上，新增 Base、Arbitrum 或 Optimism 從來都不是選項。在 Alchemy 上，這只是在同一個應用程式中、以同一組金鑰啟用一個網路。

同一組金鑰也適用於我們的 [Data API](/docs/data)，可取得代幣餘額、價格與 NFT 資料，因此你今天遷移到的端點，也涵蓋了你原本日後得自行建構的功能。

## 成本如何比較？

這兩項產品的計費方式不同。Blockchain Node Engine 按節點、按小時收費，不論節點是在處理流量還是閒置。我們則依你發送的請求計費，以運算單位（CU）衡量，像 `eth_blockNumber` 這樣的輕量呼叫，消耗的單位比繁重的 trace 少。

<EmbeddedTable
  table={{
    columns: [
      { key: "1", width: 220, title: "", dataType: "object" },
      {
        key: "2",
        width: 260,
        title: "Google Cloud Blockchain Node Engine",
        dataType: "object",
      },
      { key: "3", width: 260, title: "Alchemy", dataType: "object" },
    ],
    data: [
      {
        "1": { title: "<p>計費模式</p>", tooltip: "", icon: "" },
        "2": { title: "<p>按節點、按小時</p>", tooltip: "", icon: "" },
        "3": {
          title: "<p>按請求，以運算單位計算</p>",
          tooltip: "",
          icon: "",
        },
        id: 0,
      },
      {
        "1": {
          title: "<p>Ethereum 全節點工作負載</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>每小時 $0.69，每月約 $504</p>",
          tooltip: "",
          icon: "",
        },
        "3": {
          title: "<p>Free 方案每月 30M CU；Pay As You Go 每百萬 CU $0.525</p>",
          tooltip: "",
          icon: "",
        },
        id: 1,
      },
      {
        "1": {
          title: "<p>Ethereum 封存節點工作負載</p>",
          tooltip: "",
          icon: "",
        },
        "2": {
          title: "<p>每小時 $2.74，每月約 $2,000</p>",
          tooltip: "",
          icon: "",
        },
        "3": {
          title: "<p>相同端點、相同費率</p>",
          tooltip: "",
          icon: "",
        },
        id: 2,
      },
      {
        "1": { title: "<p>閒置時數</p>", tooltip: "", icon: "" },
        "2": { title: "<p>計費</p>", tooltip: "", icon: "" },
        "3": { title: "<p>不計費</p>", tooltip: "", icon: "" },
        id: 3,
      },
      {
        "1": { title: "<p>新增另一條鏈</p>", tooltip: "", icon: "" },
        "2": {
          title: "<p>再加一個節點（若該鏈受支援）</p>",
          tooltip: "",
          icon: "",
        },
        "3": { title: "<p>相同金鑰、相同費率</p>", tooltip: "", icon: "" },
        id: 4,
      },
    ],
  }}
/>

以規模來看，一個 Ethereum 封存節點在 Google Cloud 上每月約 $2,000 的費用，在我們的 Pay As You Go 方案中可換得約 38 億 CU，並可分配到你帳戶中的每一條鏈上使用。為了備援而運行第二個節點的團隊，得支付兩倍的每小時費用。我們的端點由 URL 背後的一整個節點機隊提供服務，因此備援不會變成另一筆支出項目。高用量團隊可以與我們的銷售團隊洽談 Enterprise 方案與承諾吞吐量。

## 需要協助規劃遷移嗎？

<ImageBlock
  src="https://media.alchemy.com/blog/google-cloud-blockchain-node-engine-alternative-migration-support.jpeg"
  alt="Google Cloud 終止 Blockchain Node Engine，Alchemy 提供遷移實作支援"
  width={3200}
  height={1800}
/>

你可以[建立免費的 Alchemy 帳號](https://dashboard.alchemy.com/)，今天就擁有可用的端點，不需要簽約，也沒有節點需要同步。這足以讓你在本週就針對目前的設定執行一致性檢查。

對於正式環境工作負載、多鏈部署，或是仰賴專屬節點的團隊，[歡迎與我們的銷售團隊聯繫](/contact-sales)。我們會協助你對應 Blockchain Node Engine 的設定、選擇合適的方案規模，並在 12 月 15 日之前及早安排切換。

## 常見問題

### Google Cloud Blockchain Node Engine 何時停止服務？

Google Cloud Blockchain Node Engine 與 Blockchain RPC 將於 2026 年 12 月 15 日停止服務。當天 Google 會刪除剩餘的節點與端點，任何仍在呼叫它們的應用程式都會失敗，因此請提前數週規劃切換。

### Google Cloud Blockchain Node Engine 有什麼好的替代方案？

Alchemy 是可直接取代的方案。它透過相同的標準 JSON-RPC 方法，支援 Blockchain Node Engine 提供的每一個網路（Ethereum、Polygon 與 Solana），還能以一組 API 金鑰使用另外超過 100 條鏈。需要單租戶容量的團隊，可以使用 Alchemy Dedicated Clusters 取代專屬節點。

### 離開 Blockchain Node Engine 需要重寫我的應用程式嗎？

不需要。Alchemy 使用標準 JSON-RPC，因此 ethers、viem 和 `web3.py` 等用戶端都能繼續運作。你只需變更每個網路的端點 URL，並移除 Google Cloud API 金鑰的標頭或查詢參數，因為 Alchemy API 金鑰已包含在 URL 中。

### 在 Alchemy 上，什麼可以取代專屬的 Blockchain Node Engine 節點？

對大多數工作負載而言，標準的 Alchemy RPC 端點就能同時取代全節點與封存節點，而且無需運行或升級任何節點。需要為自身工作負載保留專屬容量的團隊，可以改用 Alchemy Dedicated Clusters，它在單一端點背後提供單租戶基礎設施。

### 遷移到 Alchemy 後可以使用哪些鏈？

Blockchain Node Engine 支援的每個網路都可使用，包括 Ethereum 主網、Sepolia、Hoodi、Polygon 主網、Amoy 與 Solana。除此之外，Alchemy 支援超過 100 條鏈，包括 Base、Arbitrum、Optimism 與 BNB Chain，全部都能以同一組 API 金鑰存取。

### AI 程式碼代理可以幫我遷移端點嗎？

可以。安裝 Alchemy CLI、執行 `alchemy install skills` 並新增 Alchemy MCP server，接著請 Claude Code 或 Cursor 等代理找出儲存庫中所有 Google Cloud 端點與 API 金鑰、提出替換建議，並等待你核准。之後代理可以使用 CLI 驗證每個新端點。

### Alchemy 比 Google Cloud Blockchain Node Engine 便宜嗎？

對大多數工作負載而言，是的。Blockchain Node Engine 按節點、按小時計費，即使閒置也一樣：一個 Ethereum 全節點每月約 $504，一個封存節點約 $2,000。Alchemy 則按請求計費。Free 方案每月包含 3,000 萬個運算單位，Pay As You Go 方案為每百萬運算單位 $0.525。
