共用方式為


新增快取以改善 Azure API 管理的效能 \(部分機器翻譯\)

適用於:開發人員 |基本 |基本 v2 |標準 |標準 v2 |Premium |進階 v2

可以使用回應快取設定 API 和 API 管理中的作業。 回應快取可大幅降低 API 呼叫端的延遲,以及 API 提供者的後端負載。

重要

內建快取具揮發性,且相同區域的所有單位共用相同的 API 管理服務。 不論所使用的是什麼快取類型 (內部或外部),如果快取相關作業因為快取的變動或任何其他原因而無法連線到快取,則使用快取相關作業的 API 呼叫不會引發錯誤,且快取作業會順利完成。 在讀取作業的情況下,Null 值會傳回給呼叫原則運算式。 您的原則程式碼應該設計為確保有「後援」機制,可擷取快取中找不到的資料。 如需快取的詳細資訊,請參閱 API 管理快取原則在 Azure API 管理中自訂快取

快取原則

您將學到什麼:

  • 為您的 API 新增回應快取
  • 驗證快取的運作方式

注意

內部快取不適用於 Azure API 管理的 [耗用量] 層。 您可以改用外部 Azure Redis 快取。 您也可以在其他 API 管理 服務層級中設定外部快取。

必要條件

完成本教學課程:

新增快取原則

在此範例中顯示快取原則時,測試作業的第一個要求會從後端服務傳回回應。 此回應會被快取,並依指定的標頭和查詢字串參數來識別。 後續使用相符的參數呼叫此操作時,將傳回快取的回應,直到快取期間間隔到期為止。

  1. 登入 Azure 入口網站

  2. 瀏覽至您的 API 管理執行個體。

  3. 從左側功能表中選取 [API>API]。

  4. 選取您要設定快取的 API。

  5. 選取畫面頂端的 [設計] 索引標籤。

  6. 在 [輸入處理] 區段中,選取 </> 圖示。 入口網站中 API 管理 原則編輯器的螢幕快照。

  7. 在 元素中 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>
    
  8. 在 元素中 outbound ,新增下列原則:

    <cache-store duration="20" />
    

    在此原則中, 持續時間 會指定快取回應的到期間隔。 在本範例中,間隔為 20 秒。

提示

如果您使用外部快取 (如在 Azure API 管理中使用外部 Azure Redis 快取所述),則可以指定快取原則的 caching-type 屬性。 如需詳細資訊,請參閱 API 管理快取原則

呼叫作業和測試快取

若要查看作用中的快取,請從入口網站呼叫作業。

  1. 在 Azure 入口網站 中,流覽至您的 API 管理 實例。
  2. 從左側功能表中選取 [API>API]。
  3. 選取您已新增快取原則的 API。
  4. 選取要測試的作業。
  5. 選取 右上方選單中的 [測試 ] 索引標籤。
  6. 選取 [ 快速 連續追蹤兩或三次]。
  7. 在 [HTTP 回應] 底下,選取 [追蹤] 索引標籤
  8. 跳至 [ 輸入 ] 區段並捲動至原則 cache-lookup 。 您應該會看到類似下列螢幕快照中的訊息,指出快取命中: 在入口網站中測試 API 時的快取查閱螢幕快照。