Sprawdzone metody konfigurowania limitu czasu wejścia/wyjścia

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Żądania do interfejsu API wysyłane przez aplikacje klienckie przechodzą przez różne komponenty Apigee Edge, zanim dotrą do usług backendu. Większość aplikacji klienckich oczekuje odpowiedzi na te żądania w odpowiednim czasie.

Aby szybko udzielić odpowiedzi, w każdym komponencie, przez który przepływają żądania do interfejsu API, ustawiane są wartości limitu czasu wejścia-wyjścia. Jeśli którykolwiek z komponentów w przepływie trwa dłużej niż poprzedni komponent, poprzedni komponent przekroczy limit czasu i w odpowiedzi wyświetli błędy przekroczenia limitu czasu bramy (504).

Podczas konfigurowania limitu czasu należy zachować ostrożność podczas konfigurowania wartości dla każdego z komponentów. W przeciwnym razie może to doprowadzić do błędów przekroczenia limitu czasu bramy (504).

W tym dokumencie opisujemy sprawdzone metody konfigurowania limitu czasu wejścia-wyjścia w różnych komponentach, przez które przepływają żądania do interfejsu API w Apigee Edge.

Sprawdzone metody konfigurowania limitu czasu operacji wejścia-wyjścia

Podczas konfigurowania limitu czasu wejścia/wyjścia weź pod uwagę te sprawdzone metody:

  • Pierwszy komponent: zawsze używaj najwyższego czasu oczekiwania w pierwszym komponencie przepływu żądań do interfejsu API, którym jest aplikacja kliencka w Apigee Edge.
  • Ostatni komponent: zawsze używaj najniższego czasu oczekiwania dla ostatniego komponentu w przepływie żądania interfejsu API, którym jest usługa backendu w Apigee Edge.
  • Między komponentami: upewnij się, że między pierwszym a ostatnim komponentem w procesie występują co najmniej 2–3 sekundy w wartości czasu oczekiwania skonfigurowanego w każdym komponencie.
  • Router: zawsze warto skonfigurować (zmienić) wartość limitu czasu wejścia/wyjścia dla określonego hosta wirtualnego zamiast konfigurować go w routerze. Dzięki temu nowa wartość czasu oczekiwania będzie miała wpływ tylko na te serwery proxy interfejsu API, które używają określonego hosta wirtualnego, a nie wszystkie serwery proxy interfejsu API obsługiwane przez router.

    Skonfiguruj (zmień) limit czasu wejścia/wyjścia w routerze tylko wtedy, gdy masz absolutną pewność, że nowa wartość limitu czasu wejścia/wyjścia jest wymagana lub ma zastosowanie do wszystkich serwerów proxy interfejsu API działających w routerze.

  • Procesor wiadomości: zawsze zalecamy skonfigurowanie (zmodyfikowanie) wartości limitu czasu wejścia/wyjścia dla określonego serwera proxy interfejsu API zamiast konfigurowania go w procesorze wiadomości. Dzięki temu nowa wartość limitu czasu będzie miała wpływ tylko na określony serwer proxy interfejsu API, a nie na wszystkie serwery proxy API obsługiwane przez procesor wiadomości.

    Skonfiguruj (zmień) limit czasu wejścia/wyjścia w procesorze wiadomości tylko wtedy, gdy masz absolutną pewność, że nowa wartość limitu czasu wejścia/wyjścia jest wymagana lub ma zastosowanie do wszystkich serwerów proxy interfejsu API działających w procesorze wiadomości.

Przykładowe scenariusze

Scenariusze opisane w tej sekcji pomogą Ci zrozumieć, jak prawidłowo ustawić wartości limitu czasu wejścia-wyjścia.

Scenariusz 1. Żądania do Apigee Edge bezpośrednio z aplikacji klienckich

W tej sekcji opisujemy sprawdzone metody konfigurowania wartości czasu oczekiwania w konfiguracji Apigee Edge, w której nie ma komponentów pośrednich między aplikacją kliencką a Apigee Edge ani między Apigee Edge a serwerem backendu.

Przykładowa konfiguracja Apigee bez komponentów pośrednich

Proces rozpoczyna się od klienta przechodzącego do routera, potem do procesora wiadomości, a następnie do serwera backendu

Jeśli usługa Apigee Edge jest skonfigurowana zgodnie z schematem powyżej, bez komponentów pośrednich, zastosuj te sprawdzone metody:

  1. Pierwszym elementem w procesie jest aplikacja kliencka. Wartość najwyższego limitu czasu należy ustawić po stronie klienta.
  2. Serwer backendu jest ostatnim komponentem w procesie. Wartość najniższego czasu oczekiwania należy ustawić na serwerze backendu.
  3. Ustaw wartości czasu oczekiwania dla każdego komponentu w takiej kolejności:

    Skonfiguruj czas oczekiwania po stronie klienta, potem na routerze, następnie na procesorze wiadomości i na serwerze backendu.

    Aby uniknąć problemów, poniższy przykład przedstawia wartości czasu oczekiwania ustawione dla różnych komponentów zgodnie z powyższymi wskazówkami:

    Skonfiguruj limit czasu klienta po 60 sekundach, potem router na 57 sekundach, potem procesor wiadomości po 55 sekundach, a potem serwer backendu przy 52 sekundach.

Scenariusz 2. Żądania do Apigee Edge wysyłane z aplikacji klienckich za pomocą komponentów pośrednich

W tej sekcji opisano sprawdzone metody konfigurowania wartości czasu oczekiwania w konfiguracji Apigee Edge, w której występuje co najmniej jeden komponent pośredni między aplikacją kliencką a Apigee Edge, a także między Apigee Edge a Twoim serwerem backendu.

Komponenty pośrednie mogą obejmować system równoważenia obciążenia, sieć dystrybucji treści (CDN), NGINX itp.

Przykładowa konfiguracja Apigee z 1 komponentem pośrednim między klientem a Apigee Edge oraz między Apigee Edge a serwerem backendu

Proces rozpoczyna się od klienta przechodzącego do komponentu pośredniego 1, potem do routera, do procesora wiadomości, do komponentu pośredniego 2, do serwera backendu

Jeśli usługa Apigee Edge jest skonfigurowana zgodnie z schematem powyżej z co najmniej jednym komponentem pośrednim, zastosuj te sprawdzone metody:

  1. Pierwszym elementem w procesie jest aplikacja kliencka. Ustaw najwyższą wartość czasu oczekiwania na kliencie.
  2. Serwer backendu jest ostatnim komponentem w procesie. Najniższa wartość czasu oczekiwania powinna być ustawiona na serwerze backendu.
  3. Skonfiguruj wartości czasu oczekiwania dla każdego z komponentów, w tym komponentów pośrednich, w następującej kolejności:

    Skonfiguruj czas oczekiwania po stronie klienta, potem składnik pośredni 1, router, przetwarzający wiadomości, komponent pośredni 2 i serwer backendu.

    Aby uniknąć problemów, poniższy przykład przedstawia wartości czasu oczekiwania ustawione dla różnych komponentów zgodnie z powyższymi wskazówkami:

    Skonfiguruj czas oczekiwania na kliencie po 63 sekundach, potem Składnik pośredni 1 po 60 sekundach, router na 57 sekundach, potem procesor wiadomości w 55 sekundach, potem Komponent pośredni 2 – 52 sekundy, a potem serwer backendu co 59 sekund.