Antipattern: zezwolenie na powolny backend

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

Systemy backendu uruchamiają usługi, do których dostęp mają proxy interfejsu API. Innymi słowy, są one podstawowym powodem istnienia interfejsów API i warstwy proxy zarządzania interfejsami API.

Każde żądanie do interfejsu API, które jest kierowane przez platformę Edge, przechodzi typową ścieżkę, zanim dotrze do backendu:

  • Żądanie pochodzi od klienta, którym może być przeglądarka lub aplikacja.
  • Żądanie jest następnie odbierane przez bramę Edge.
  • Jest przetwarzane w bramie. W ramach tego przetwarzania żądanie jest przekazywane do a wielu rozproszonych komponentów.
  • Brama kieruje żądanie do backendu, który na nie odpowiada.
  • Odpowiedź z backendu wraca tą samą ścieżką przez bramę Edge do klienta.

W efekcie wydajność żądań interfejsu API kierowanych przez Edge zależy zarówno od Edge, jak i od systemów backendu. W tym antyprzykładzie skupimy się na wpływie na żądania interfejsu API spowodowanym przez źle działające systemy backendu.

Antywzorzec

Rozważmy przypadek problematycznego backendu. Możliwe są te sytuacje:

  • Backend o niewystarczających zasobach
  • Powolny backend
  • Backend o niewystarczających zasobach

    Wyzwanie związane z udostępnianiem usług w tych systemach backendu za pomocą interfejsów API polega na tym, że są one dostępne dla dużej liczby użytkowników. Z biznesowego punktu widzenia jest to pożądane wyzwanie, ale trzeba sobie z nim poradzić.

    Wielokrotnie systemy backendu nie są przygotowane na ten dodatkowy popyt na swoje usługi i w konsekwencji mają niewystarczające zasoby lub nie są dostrojone do wydajnej odpowiedzi.

    Problem z backendem o „niewystarczających zasobach” polega na tym, że w przypadku gwałtownego wzrostu liczby żądań interfejsu API obciąży to zasoby, takie jak procesor, obciążenie i pamięć w systemach backendu. W końcu spowoduje to niepowodzenie żądań interfejsu API.

    Powolny backend

    Problem z nieprawidłowo dostrojonym backendem polega na tym, że będzie on bardzo powoli odpowiadać na wszystkie przychodzące do niego żądania, co spowoduje zwiększenie opóźnień, przedwczesne przekroczenie limitu czasu i pogorszenie jakości obsługi klienta.

    Platforma Edge oferuje kilka opcji, które można dostosować, aby obejść i zarządzać powolnym backendem. Opcje te mają jednak ograniczenia.

    Wpływ

    • W przypadku backendu o niewystarczających zasobach wzrost ruchu może prowadzić do nieudanych żądań.
    • W przypadku powolnego backendu zwiększy się opóźnienie żądań.

    Sprawdzona metoda

    • Używaj pamięci podręcznej do przechowywania odpowiedzi, aby skrócić czas odpowiedzi interfejsu API i zmniejszyć obciążenie serwera backendu.
    • Rozwiąż podstawowy problem na powolnych serwerach backendu.

    Więcej informacji