快取與保存功能總覽

本頁內容適用於 ApigeeApigee Hybrid

查看 Apigee Edge 說明文件。

Apigee 持久性功能包括快取、鍵值對應和屬性集。如果您使用 Apigee Hybrid,可以透過 Kubernetes 密鑰保存機密資料。

功能 使用
快取 使用一般用途的快取政策,即可在多個要求/回應工作階段中,保留 Proxy 需要的任何物件。您也可以使用 ResponseCache 政策,快取後端資源的回應。如果後端資料只會定期更新,回應快取就特別實用。ResponseCache 政策可減少對後端資料來源的呼叫次數。
鍵/值對應 鍵值對應 (KVM) 提供一般執行階段資料儲存空間,可儲存可能定期變更的資料。例如:使用者工作階段資料、購物車等。KVM 項目可以加密。
資源集 屬性集適合儲存不常變更的設定資料。
Kubernetes Secret (僅限 Apigee Hybrid) 使用 Secret 儲存使用者憑證等機密資料。

快取

當快取政策在 API Proxy 流程中執行時,系統會動態建立環境範圍的快取資源。 快取政策包括 PopulateCache 政策LookupCache 政策InvalidateCache 政策,以及 ResponseCache 政策

快取項目會在記憶體 (L1) 中保留一秒。您無法變更這項設定。 一秒後,快取的物件會放入資料庫 (L2),並在快取到期前可供使用。詳情請參閱「記憶體內永久快取層級」。 您可以透過快取政策設定,管理快取詳細資料,例如到期時間。Apigee API 可供您列出及刪除快取資源。

使用快取政策時,請設定快取鍵,確保快取值鍵的獨特性。快取金鑰和其他可設定的值,可讓您以可靠的方式取得輸入的相同資料。快取大小和可用性受限於特定限制

您可能需要使用快取來執行下列操作:

  • 減少延遲和流量。要求會在較短時間內完成,並重複使用表示法。
  • 在交易之間保留資料。您可以儲存工作階段資料,以便在 HTTP 交易中重複使用。
  • 支援安全性。將快取項目的存取範圍限制為只能在特定環境中存取,或只能由特定 API 代理項目存取。

後端回應快取

您可以使用 ResponseCache 政策,快取後端資源的回應。

如果後端資料只會定期更新,這項功能就特別實用。這項ResponseCache政策可減少對後端資料來源的呼叫次數。

您也可以透過 ResponseCache 政策,讓 Apigee 查看特定 HTTP 回應快取標頭,並根據標頭指令採取行動。舉例來說,對於後端目標的回應,Apigee 支援 Cache-Control 標頭。這個標頭可用於控制快取回應的有效時間上限等。詳情請參閱支援 HTTP 回應標頭

短期一般用途快取

使用一般用途的快取政策,您可以在多個要求/回應工作階段中,保存 Proxy 需要的任何物件。

您可以使用 PopulateCache 政策LookupCache 政策InvalidateCache 政策,在執行階段填入、擷取及清除快取資料。

例如,您可能會暫時儲存:

  • 用於工作階段管理的工作階段 ID。
  • 外送電話的憑證 (例如 API 金鑰或 OAuth 存取權杖)。
  • 應用程式必須分頁顯示的回應內容。

在執行階段,快取政策會在 Proxy 變數和您指定的已設定快取之間複製值。將值放入快取時,系統會從您指定的變數複製到快取。從快取擷取時,系統會將其複製到變數中,供 Proxy 使用。

如需程式碼範例,請參閱「範例:一般用途的快取」。

使用 Apigee API 管理快取

您可以使用 caches API 列出及刪除快取。

使用鍵/值對應 (KVM) 長期保存資料

如要無限期儲存加密或未加密的結構化資料,您可以建立並填入含有任意鍵/值組合的鍵/值對應 (KVM)。舉例來說,您可能會儲存:

  • 將 IP 位址與國家/地區代碼相互對應的地圖。
  • 允許/拒絕存取的 IP 位址清單。
  • 對應長網址和縮短網址的地圖。
  • 環境專屬資料,例如配額計數和 OAuth 權杖到期時間。

KVM 可以有三種範圍:機構、環境和 apiproxy。舉例來說,如果機構中的所有 API 都要使用鍵/值組合,請在機構範圍建立 KVM;如果只有特定 API Proxy 應有權存取鍵/值,請在 apiproxy 範圍建立 KVM。詳情請參閱「處理鍵/值對應表」。

資源集

屬性集是自訂的鍵/值組合集合,可儲存資料。API Proxy 執行時可以擷取這項資料。

通常您會使用屬性集儲存不應在 API Proxy 邏輯中硬式編碼的非到期資料,例如設定資料。您可以在 Proxy 中存取屬性集資料,只要能存取流程變數即可。

屬性集的常見用途是提供與某個環境相關聯的值。舉例來說,您可以建立環境範圍的屬性集,其中包含專為測試環境中執行的 Proxy 設定的值,以及另一個用於正式環境的屬性集。

詳情請參閱「使用屬性集」。

Kubernetes Secret

(僅限 Apigee Hybrid) 如果您已在自訂保存庫中使用 Kubernetes 管理機密資料,不妨考慮使用 Kubernetes Secrets。與 KVM 資料一樣,您可以在 API Proxy 流程變數中存取 Kubernetes Secret 資料。 詳情請參閱「將資料儲存在 Kubernetes Secret 中」。