Udostępnij za pomocą


Dodawanie buforowania w celu poprawy wydajności usługi Azure API Management

DOTYCZY: Programista | Podstawowa | Podstawowa wersja 2 | Standardowa | Standardowa, wersja 2 | Premium | Premium, wersja 2 | Odizolowany

Interfejsy API i operacje w usłudze API Management można skonfigurować przy użyciu buforowania odpowiedzi. Buforowanie odpowiedzi może znacznie zmniejszyć opóźnienia wywołań interfejsu API i ładowania zaplecza dla dostawców interfejsów API. W tym artykule opisano, jak wprowadzić mechanizm buforowania do interfejsów API.

Ważne

Wbudowana pamięć podręczna jest ulotna i współużytkowana przez wszystkie jednostki w tym samym regionie w tej samej instancji usługi API Management. Niezależnie od używanego typu pamięci podręcznej (wewnętrznej lub zewnętrznej), jeśli operacje związane z pamięcią podręczną nie mogą nawiązać połączenia z pamięcią podręczną z powodu zmienności pamięci podręcznej lub z jakiegokolwiek innego powodu, wywołanie interfejsu API korzystające z operacji związanej z pamięcią podręczną nie zgłasza błędu, a operacja pamięci podręcznej zakończy się pomyślnie. W przypadku operacji odczytu zwracana jest wartość null do wywołującego wyrażenia zasad. Kod zasad powinien być zaprojektowany w celu zapewnienia, że istnieje mechanizm rezerwowy do pobierania danych, które nie zostały znalezione w pamięci podręcznej.

Zrzut ekranu przedstawiający zasady dotyczące pamięci podręcznej w usłudze API Management.

W tym artykule poznasz:

  • Dodawanie buforowania odpowiedzi do interfejsu API
  • Sprawdź, czy buforowanie działa

Uwaga

Buforowanie wewnętrzne nie jest dostępne w warstwie Zużycie usługi Azure API Management. Zamiast tego można użyć zewnętrznej pamięci podręcznej Azure Cache for Redis. Możesz również skonfigurować zewnętrzną pamięć podręczną w innych warstwach usługi API Management.

Wymagania wstępne

Dodaj zasady buforowania

W przypadku zasad buforowania pokazanych w tym przykładzie pierwsze żądanie operacji testowej zwraca odpowiedź z usługi zaplecza. Ta odpowiedź jest zbuforowana z kluczem uwzględniającym określone nagłówki i parametry ciągu zapytania. Kolejne wywołania operacji z pasującymi parametrami będą zwracać zbuforowaną odpowiedź do momentu wygaśnięcia czasu trwania pamięci podręcznej.

  1. Zaloguj się w witrynie Azure Portal.

  2. Przejdź do wystąpienia usługi API Management.

  3. Wybierz pozycję API>API w menu po lewej stronie.

  4. Wybierz interfejs API, dla którego chcesz skonfigurować buforowanie.

  5. W górnej części ekranu wybierz kartę Projektowanie .

  6. W sekcji Przetwarzanie przychodzące, wybierz ikonę </>:

    Zrzut ekranu przedstawiający interfejsy API zarządzania w portalu.

  7. W elemecie inbound dodaj następujące zasady:

    <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>
    <rate-limit calls="10" renewal-period="60" />
    

    Uwaga

    Dodaj zasady limitu szybkości (lub zasady rate-limit-by-key ) po wyszukiwaniu pamięci podręcznej, aby pomóc ograniczyć liczbę wywołań i zapobiec przeciążeniu usługi zaplecza, jeśli pamięć podręczna nie jest dostępna.

  8. W elemecie outbound dodaj następujące zasady:

    <cache-store duration="20" />
    

    W tych zasadach duration określa interwał wygaśnięcia buforowanych odpowiedzi. Interwał wynosi 20 sekund.

  9. Wybierz Zapisz.

Napiwek

Jeśli używasz zewnętrznej pamięci podręcznej, zgodnie z opisem w temacie Używanie zewnętrznej pamięci podręcznej zgodnej z usługą Redis w usłudze Azure API Management, możesz określić caching-type atrybut zasad buforowania. Aby uzyskać więcej informacji, zobacz Zasady buforowania usługi API Management .

Wywołaj operację w celu przetestowania buforowania

Aby przetestować buforowanie, wywołaj operację w portalu.

  1. Na portalu Azure przejdź do instancji usługi API Management.
  2. Wybierz pozycję API>API w menu po lewej stronie.
  3. Wybierz interfejs API, do którego dodano zasady buforowania.
  4. Wybierz operację do przetestowania.
  5. Wybierz kartę Test w górnej części okna.
  6. Wybierz pozycję Śledź dwa lub trzy razy w krótkim odstępie czasu.
  7. W obszarze odpowiedź HTTP wybierz kartę Śledzenie .
  8. Przejdź do sekcji Ruch przychodzący i przewiń do cache-lookup zasad. Powinien zostać wyświetlony komunikat podobny do tego na poniższym zrzucie ekranu, wskazujący na trafienie w pamięci podręcznej: Zrzut ekranu przedstawiający wyszukiwanie w pamięci podręcznej podczas testowania interfejsu API w portalu.