Apigee 技術功能總覽

本頁內容適用於 Apigee 和 Apigee Hybrid。

查看 Apigee Edge 說明文件。

本主題會簡要說明 Apigee 的功能,並比較 Apigee 與 Apigee Hybrid 的功能與特色。

下表列出本主題中比較 Apigee API 管理產品:

產品 託管位置 管理員:
Apigee Google Cloud Apigee
Apigee Hybrid Google Cloud 和客戶的私人資料中心 Apigee 會管理管理層,客戶則管理執行階段層。

Apigee 功能摘要

下表提供 Apigee (和混合式) 的功能層級摘要。

功能 Apigee 和 Hybrid 支援
API Proxy 修訂版本

部署後即無法變更

Istio 適用的 Apigee 轉接器 已淘汰:建議改用 Apigee Adapter for Envoy。
應用程式整理 使用 AppGroups 或開發人員應用程式關聯整理應用程式。請參閱「 整理用戶端應用程式擁有權」一文。
Deployment
  • 非同步部署
  • 系統會根據執行階段層上次向管理層「簽到」的時間,擷取部署狀態
環境
  • 支援環境群組
  • 透過 Apigee UI 和 API 自助服務
  • 服務拓撲的彈性
  • MP Pod 只能服務一個環境

詳情請參閱「關於環境和環境群組」。

支援以 gRPC 為基礎的 Proxy

處理傳送至 gRPC 目標伺服器的一元 gRPC 通訊協定 API 要求。請參閱「建立 gRPC API Proxy」。

HTTP/1.1 標頭欄位名稱大小寫

轉送至後端時,會將 HTTP/1.1 標頭欄位名稱轉換為小寫。這種行為可能會影響預期保留大小寫的應用程式。

金鑰儲存區/信任儲存區
  • 以 Kubernetes 密鑰形式管理的北向
KVM
  • 您可以在 Apigee UI 中建立加密的環境範圍 KVM。KVM 一律會加密。您無法在 UI 中新增、更新或查看 KVM 項目。
  • 使用 private. 屬性搭配所有變數,透過 GET 指令存取 KVM 時,即可在偵錯 (追蹤) 工作階段中隱藏 KVM 資訊。如果未使用 private. 屬性,KVM 仍會加密,但 KVM 資訊會在偵錯追蹤工作階段中解密,且不會擲回例外狀況。
  • 您可以使用 keyvaluemaps.entries API 或 KeyValueMapOperations 政策管理 KVM 項目。
  • 您可以使用屬性集,處理與 KVM 相同的部分用途。請參閱「使用屬性組合」。
  • <MapName> 元素可讓 KeyValueMapOperations 政策在執行階段動態識別要使用的 KVM。

如要進一步瞭解如何在 UI 中建立 KVM,請參閱「使用鍵值對應」。另請參閱存取設定資料,瞭解如何選擇合適的資料保存機制。

營利 Apigee 和 Apigee Hybrid 支援此功能。 如需功能,請參閱營利總覽。
Node.js
  • 不支援 Node.js API Proxy。
  • Apigee 建議您在 Kubernetes 中將 Node.js 應用程式做為個別容器代管 (相同或不同叢集)
OAuth 新的 RevokeOAuthv2 政策會依使用者 ID、應用程式 ID 或兩者撤銷。
政策 請參閱政策總覽。
資源 無法使用機構層級資源
角色和權限
  • 透過 Google Cloud 控制台的 IAM 服務管理
  • 系統提供部分精選的預設角色
  • 您可以建立自訂角色,其中可包含其他 Google Cloud 權限

詳情請參閱「 使用者和角色」。

「建立 Proxy」精靈中的 SOAP 服務 不支援。請參閱 wsdl2apigee,這個開放原始碼專案提供 SOAP 公用程式,可搭配 Apigee 使用。
追蹤/偵錯工作階段 請參閱「追蹤支援」。
虛擬主機

混合式:

  • 透過 Anthos 服務網格實作 Ingress。
  • 金鑰和憑證會直接部署到 Kubernetes。

Apigee:

  • 每個執行個體都會透過自行簽署的憑證公開 HTTPS 端點。您可以查詢機構,下載憑證的 CA。

追蹤/偵錯支援

下表列出 Apigee 和混合式 Trace 支援:

功能 Apigee 和 Hybrid 支援
及時性 稍有延遲;非同步
工作階段名稱/ID 不接受使用者提供的會期名稱
篩選器 支援複雜的篩選邏輯,包括 AND 和 OR 邏輯運算。存取 流程變數參照中提及的任何流程變數。語法與條件式使用的語法相同,如條件參照所示。
工作階段逾時

僅定義偵錯工作階段的長度。起點是 Message Processor 收到以偵錯模式執行的要求時。

如果工作階段是透過 API 啟動,預設值為 5 分鐘;如果是透過使用者介面啟動,預設值為 10 分鐘。

混合式裝置會保留資料 24 小時,然後自動刪除。

工作階段有效性 工作階段建立要求有效的時間長度。如果偵錯工作階段未在上述時間內啟動,同步器可以忽略工作階段建立要求。請務必按照「必要條件」一文所述,讓 Synchronizer 的時鐘保持同步。
追蹤要求數 預設值為每個訊息處理器 10 個,上限為 15 個。
API Apigee 會公開 Debug Session API 和 Debug Session Data API,

API 總覽

以下摘要說明 Apigee API 和功能。

行為 Apigee API
基礎網域 apigee.googleapis.com
媒體類型 application/json
驗證 OAuth2
鍵中的時間戳記 String 格式
{
  "createdAt": "1234",
  "lastModifiedAt": "5678"
}
expand=false 查詢參數的結構
{
  "proxies": [
    {
      "name": "helloworld"
    },
    {
      "name": "weather"
    }
  ]
}
查詢參數開頭為底線 不支援 (optimal=true)
酬載中的屬性:
  • created_by
  • modified_by
  • self
不支援
酬載中的預設值 不包含
錯誤處理結構
{
  "error": {
    "code": 409,
    "message": "...",
    "status": "ABORTED",
    "details": [...]
  }
}
快取刪除回應 傳回:204 No Content
快取 API 作業 列出和 刪除。部署 API Proxy 時,系統會自動建立短期 L1 快取。詳情請參閱「快取內部」。

Apigee 指標 API

Apigee 指標 API 摘要:

功能 Apigee API
API 端點 apigee.googleapis.com
每日分析電子郵件 不支援任何 API
非同步查詢清單 API 回應中會省略 userId 屬性。 請參閱「 方法:organizations.environments.queries.list」。
自訂報表 API 回應中已移除 createdBy 和 lastModifiedBy 屬性。請參閱 Reports API。

Apigee Hybrid 功能

下表彙整了混合式功能:

服務 混合區域
數據分析 執行階段層的資料收集 Pod 會使用 fluentd 和 UDCA (通用資料收集代理程式) 收集分析資料,並將資料提供給管理層的 UAP (統一分析平台)。
API Proxy Gateway 訊息處理器 (MP) 會處理傳入的要求。MP 會在執行階段平面中,以一或多個容器化應用程式的形式實作。
持續性 Cassandra 可為 KMS、KVM、配額和快取功能提供持續性。
部署作業問題 同步器可確保管理層和執行階段層之間的 API Proxy 設定、環境資訊和其他資料保持最新狀態。
管理使用者介面 Apigee 使用者介面是託管於管理層的容器化應用程式。
負載平衡 Istio Ingress 控制器會將要求交給執行階段層中的 Router/訊息處理器 (RMP) 容器化應用程式。
API Apigee API 可透過管理伺服器和 MART 存取。MART 會與本機 Cassandra 資料儲存庫互動,並做為 Apigee API 的 API 提供者,以存取及管理執行階段資料實體。
指標 每個叢集的所有服務都由單一 Prometheus 伺服器管理。