Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. Informacje
Żądania interfejsu API wysyłane przez aplikacje klienta przechodzą przez różne komponenty w Apigee Edge, zanim dotrą do usług backendowych. Większość aplikacji klienckich wymaga, aby odpowiedzi na te prośby były otrzymywane w terminie.
Aby zapewnić terminowe odpowiedzi, wartości limitów czasu operacji wejścia-wyjścia są ustawiane w każdym komponencie, przez który przechodzą żądania interfejsu API. Jeśli którykolwiek z komponentów w przepływie zajmuje więcej czasu niż poprzedni komponent, poprzedni komponent osiąga limit czasu i zwraca błędy 504 Gateway Timeout.
Podczas konfigurowania limitu czasu należy z największą starannością skonfigurować wartości w każdym komponencie, ponieważ w przeciwnym razie może to spowodować błędy 504 Gateway Timeout.
W tym dokumencie opisano sprawdzone metody konfigurowania limitu czasu operacji wejścia/wyjścia w różnych komponentach, przez które przepływają żądania interfejsu API w usłudze Apigee Edge.
Sprawdzone metody konfigurowania limitu czasu operacji wejścia/wyjścia
Podczas konfigurowania limitu czasu operacji wejścia/wyjścia weź pod uwagę te sprawdzone metody:
- Pierwszy komponent: zawsze używaj najwyższego limitu czasu dla pierwszego komponentu w przepływie żądań interfejsu API, czyli aplikacji klienta w Apigee Edge.
- Ostatni komponent: zawsze używaj najkrótszego limitu czasu dla ostatniego komponentu w przepływie żądania interfejsu API, czyli usługi backendowej w Apigee Edge.
- Między komponentami: sprawdź, czy czas oczekiwania skonfigurowany w każdym komponencie różni się o co najmniej 2–3 sekundy między pierwszym a ostatnim komponentem w przepływie.
- Router: zawsze dobrze jest skonfigurować (zmodyfikować) wartość limitu czasu we/wy dla konkretnego hosta wirtualnego zamiast konfigurować ją na routerze. Dzięki temu nowa wartość limitu czasu będzie miała wpływ tylko na te serwery proxy interfejsu API, które korzystają z określonego hosta wirtualnego, a nie na wszystkie serwery proxy interfejsu API obsługiwane przez router.
Skonfiguruj (zmodyfikuj) limit czasu operacji wejścia/wyjścia na routerze tylko wtedy, gdy masz absolutną pewność, że nowa wartość limitu czasu operacji wejścia/wyjścia jest wymagana lub dotyczy wszystkich interfejsów API Proxy działających na routerze.
- Procesor wiadomości: zawsze warto skonfigurować (zmodyfikować) wartość limitu czasu we/wy dla konkretnego serwera proxy interfejsu API zamiast konfigurować go na procesorze wiadomości. Dzięki temu nowa wartość limitu czasu będzie miała wpływ tylko na konkretnego pośrednika interfejsu API, a nie na wszystkich pośredników interfejsu API obsługiwanych przez usługę Message Processor.
Konfiguruj (modyfikuj) limit czasu operacji wejścia/wyjścia w procesorze wiadomości tylko wtedy, gdy masz absolutną pewność, że nowa wartość limitu czasu operacji wejścia/wyjścia jest wymagana lub dotyczy wszystkich interfejsów API Proxy działających w procesorze wiadomości.
Przykładowe scenariusze
Scenariusze w tej sekcji pomogą Ci zrozumieć, jak prawidłowo ustawić wartości limitów czasu wejść/wyjść.
Scenariusz 1. Żądania do Apigee Edge bezpośrednio z aplikacji klienta
W tej sekcji znajdziesz sprawdzone metody konfigurowania wartości limitu czasu w konfiguracji Apigee Edge, w której nie ma komponentów pośrednich między aplikacją klienta a Apigee Edge oraz między Apigee Edge a serwerem zaplecza.
Przykładowa konfiguracja Apigee bez komponentów pośrednich
Jeśli Apigee Edge jest skonfigurowana zgodnie z poniższym diagramem bez komponentów pośrednich, stosuj te sprawdzone metody:
- Aplikacja klienta jest pierwszym elementem w procesie. Na kliencie należy ustawić wartość najwyższego limitu czasu.
- Serwer backendu jest ostatnim komponentem w procesie. Na serwerze backendowym należy ustawić wartość najkrótszego limitu czasu.
- Ustaw wartości limitu czasu dla poszczególnych komponentów w tej kolejności:
Ten przykład pokazuje wartości limitu czasu ustawione w różnych komponentach zgodnie ze wskazówkami podanymi powyżej, aby uniknąć problemów:
Scenariusz 2. Żądania do Apigee Edge z aplikacji klienta przez komponenty pośrednie
W tej sekcji znajdziesz sprawdzone metody konfigurowania wartości limitu czasu w konfiguracji Apigee Edge, w której między aplikacją klienta a Apigee Edge oraz między Apigee Edge a serwerem zaplecza znajduje się co najmniej 1 element pośredni.
Elementy pośrednie mogą być systemem równoważenia obciążenia, siecią dostarczania treści (CDN), NGINX itp.
Przykładowa konfiguracja Apigee z jednym komponentem pośrednim między klientem a Apigee Edge oraz między Apigee Edge a serwerem backendowym
Jeśli Apigee Edge jest skonfigurowane zgodnie z poniższym diagramem, z jednym lub większą liczbą komponentów pośrednich, zastosuj te sprawdzone metody:
- Aplikacja klienta jest pierwszym elementem w procesie. Na kliencie należy ustawić najwyższą wartość limitu czasu.
- Serwer backendu jest ostatnim komponentem w procesie. Na serwerze backendu należy ustawić najniższą wartość limitu czasu.
- Ustaw wartości limitu czasu dla poszczególnych komponentów, w tym komponentów pośrednich, w następującej kolejności:
Ten przykład pokazuje wartości limitu czasu ustawione w różnych komponentach zgodnie ze wskazówkami podanymi powyżej, aby uniknąć problemów: