快取與保存功能總覽

本頁內容適用於 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 Proxy 存取。

後端回應快取

您可以使用 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 中」。