適用於:開發人員 |基本 |基本 v2 |標準 |標準 v2 |Premium |進階 v2 |孤立
可以使用回應快取設定 API 和 API 管理中的作業。 回應快取可大幅降低 API 呼叫端的延遲,以及 API 提供者的後端負載。 本文說明如何將快取新增至 API。
重要
內建快取是揮發性的,而且會由相同 API 管理實例中相同區域中的所有單位共用。 不論使用的快取類型為何(內部或外部),如果快取相關作業因為快取的波動性或任何其他原因而無法連線到快取,則使用快取相關作業的 API 呼叫不會引發錯誤,而且快取作業會順利完成。 在讀取作業的情況下,Null 值會傳回給呼叫原則運算式。 您的原則程式代碼應該設計成確保有後援機制可擷取快取中找不到的數據。
如需快取的詳細資訊,請參閱 API 管理快取原則和在 Azure API 管理中自訂快取。
在本文中,您會:
- 為您的 API 新增回應快取
- 確認快取正常運作
注意
Azure API 管理的使用層中無法使用內部快取。 您可以改用外部 Azure Redis 快取。 您也可以在其他 API 管理 服務層級中設定外部快取。
必要條件
新增快取原則
在此範本中顯示的快取原則下,首次對測試作業的請求會從後端服務獲得回應。 此回應會被快取,並依指定的標頭和查詢字串參數來識別。 後續以相同參數進行作業的呼叫會返回快取的回應,直到快取有效時間間隔到期為止。
登入 Azure 入口網站。
移至您的 API 管理實例。
選取左側功能表中的API>API。
選取您要設定快取的 API。
在畫面頂端,選取 [ 設計 ] 索引標籤。
在 [ 輸入處理 ] 區段中,選取 </> 圖示:
在 元素中
inbound
,新增下列原則:<cache-lookup vary-by-developer="false" vary-by-developer-groups="false"> <vary-by-header>Accept</vary-by-header> <vary-by-header>Accept-Charset</vary-by-header> <vary-by-header>Authorization</vary-by-header> </cache-lookup>
在 元素中
outbound
,新增下列原則:<cache-store duration="20" />
在此原則中,
duration
指定快取回應的到期間隔。 間隔為20秒。選取 [儲存]。
提示
如果您使用外部快取,如在 Azure API 管理中使用外部 Azure Cache for Redis 中所述,您可能想要指定快取政策的caching-type
屬性。 如需詳細資訊,請參閱 API 管理快取原則 。
執行作業以測試快取功能
若要測試快取,請在入口網站上執行作業。
- 在 Azure 入口網站中,移至您的 APIM 執行個體。
- 選取左側功能表中的API>API。
- 選取您已新增快取原則的 API。
- 選取要測試的作業。
- 選取視窗頂端的 [ 測試 ] 索引標籤。
- 選取 [ 快速 連續追蹤兩或三次]。
- 在 [HTTP 回應] 底下,選取 [追蹤] 索引標籤。
- 跳至 [ 輸入 ] 區段並捲動至原則
cache-lookup
。 您應該會看到類似下列螢幕快照中的訊息,指出快取點擊:在
相關內容
- 如需快取原則的詳細資訊,請參閱 API 管理原則參考文件中的快取原則。
- 如需使用原則表達式根據索引鍵進行專案快取的相關資訊,請參閱 Azure API 管理中的客製化快取。
- 如需使用外部 Azure Cache for Redis 或 Azure 受控 Redis 的詳細資訊,請參閱在 Azure API 管理 中使用外部 Azure Cache for Redis。