Apigee Edge 中的 Node.js 總覽

您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

您可以在 Apigee Edge 上代管 Node.js API,API Proxy 可將這些 API 呼叫為目標服務。

Apigee Edge 支援 Node.js,因此您可以使用 Node.js 為 Proxy 建構自訂後端服務。基本上,Apigee Edge 會在執行階段環境中代管 Node.js 程式碼,而該環境的範圍會限定在 Apigee 機構和環境內。部署至相同機構和環境的 API Proxy 可以呼叫 Node.js 應用程式公開的 HTTP 型 API。

Node.js 部署選項

Apigee 提供兩種 Node.js 程式碼代管選項:代管目標傳統 Node.js Edge 部署環境

部署至託管目標

代管目標可讓 Node.js 應用程式在原生環境中執行,不需依賴任何 Apigee 專屬的執行階段技術。這項服務提供原生節點執行階段,因此您可以使用喜愛的節點套件。

您可以在部署應用程式前在本機進行偵錯和測試,確保部署的版本與在本機執行的版本完全相同。部署時,您可以選擇任何應用程式執行階段版本,在代管目標中執行應用程式。舉例來說,您可能會選擇在 8.10.0 版環境或其他版本中執行 Node.js 應用程式。

下圖說明基本架構:

Hosted Targets 執行階段環境的範圍限定為 Apigee 機構和環境,可做為部署至相同機構和環境的任何 API Proxy 的目標。

部署至傳統的嵌入式 Node.js 環境

將 Node.js 部署至 Edge 的傳統做法,是內部依賴名為 (Trireme) 的開放原始碼橋接應用程式,以及名為 (Rhino) 的 JavaScript 解譯器。這些元件可讓 Node.js 程式碼直接在 Edge Java 執行階段環境中執行。

傳統的內嵌 Node.js 執行階段環境適用於 Apigee 機構和環境,可做為部署至相同機構和環境的任何 API Proxy 的目標。

採用這種做法時,您可以使用名為 apigee-access 的支援模組,從 Node.js 應用程式程式碼中存取 API Proxy 流程變數、快取、鍵值對應和配額。

選擇 Node.js 方法

Apigee 建議考慮使用代管目標。部署至代管目標的 Node.js 應用程式,不需依附任何 Apigee 專屬的 Node.js 執行階段技術。Node.js 應用程式會在託管目標中執行,與在本機開發環境中執行時完全相同。

此外,Apigee 對傳統 Node.js Edge 部署作業的支援也有所限制:

  • 僅支援舊版 Node.js (0.10.32)。
  • 標準 Node.js 環境與 Trireme/Rhino 環境的行為略有不同。
  • 將 Node.js 應用程式部署至 Edge 後,偵錯作業會變得相當困難。

目前,託管目標不支援使用 apigee-access 存取 Proxy 流程環境中的資源,例如流程變數。

如要進一步瞭解傳統 Node.js Edge 部署作業,請參閱「傳統 Node.js Edge 部署作業」。

用途

在 Edge 上使用 Node.js 的常見用途包括:

  • 建構高度自訂的獨立 HTTP 型 API 和後端服務。

  • 利用可編寫指令碼的目標端點,解決複雜的行動最佳化問題。

  • 建構複合服務和混搭服務。

  • 使用 Express 等架構,快速開發新 API 的原型。

下一步

如要決定最適合的 Node.js 部署方式,請參閱下列總覽: