Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Ten dokument wyjaśnia, jak skonfigurować limit czasu wejścia-wyjścia dla procesorów Apigee Edge
Limit czasu wejścia-wyjścia w procesorze wiadomości reprezentuje czas, dla którego czeka na odpowiedź serwera backendu lub na przygotowanie gniazda do zapisu żądania wysyłane do serwera backendu przed upływem limitu czasu.
Domyślna wartość limitu czasu wejścia/wyjścia procesora wiadomości wynosi 55 seconds
. Ten limit czasu
obowiązuje okres
do serwerów backendu skonfigurowanych w konfiguracji docelowego punktu końcowego oraz w metodzie ServiceCallout
zasady serwera proxy interfejsu API.
Limit czasu wejścia-wyjścia dla procesorów wiadomości można zwiększyć lub zmniejszyć z domyślnej wartości
55 seconds
. Możesz go skonfigurować w tych miejscach:
- Na serwerze proxy API
- Docelowy punkt końcowy
- Zasady dotyczące wywołań usługi
- Na procesorze wiadomości
Poniższe właściwości sterują limitem czasu wejścia-wyjścia w procesorach wiadomości:
Nazwa właściwości | Lokalizacja | Opis |
---|---|---|
io.timeout.millis
|
Serwer proxy interfejsu API:
|
Jest to maksymalny czas, przez który procesor wiadomości wykonuje te czynności:
Jeśli w tym czasie nie ma odpowiedzi od serwera backendu, Upłynął limit czasu procesora wiadomości.
Domyślnie właściwość ta przyjmuje wartość ustawioną dla parametru
Jeśli ta właściwość zostanie zmieniona na nową wartość limitu czasu dla określonego serwera proxy interfejsu API, wtedy problem dotyczy tylko tego serwera proxy API. |
HTTPTransport.io.timeout.millis
|
procesor komunikatów |
Jest to maksymalny czas, przez który procesor wiadomości wykonuje te czynności:
Jeśli w tym czasie nie ma odpowiedzi od serwera backendu, Upłynął limit czasu procesora wiadomości. Ta właściwość jest używana przez wszystkie serwery proxy interfejsów API działające na tym procesorze wiadomości.
Wartość domyślna tej właściwości to
Możesz ją zmodyfikować, postępując zgodnie z
Skonfiguruj czas oczekiwania wejścia-wyjścia w procesorach wiadomości. Możesz też
zastąp tę wartość, ustawiając właściwość |
Zanim zaczniesz
Przed użyciem kroków opisanych w tym dokumencie upewnij się, że rozumiesz następujące tematy:
- Jeśli nie wiesz, czym jest czas oczekiwania na operacje wejścia-wyjścia, zapoznaj się z właściwością
io.timeout.millis
opis w języku: Specyfikacja obiektu TargetEndpoint Transport Property - Jeśli nie wiesz, jak konfigurować właściwości Edge dla chmury prywatnej, przeczytaj Jak skonfigurować Edge
- Stosuj się do zaleceń podanych na stronie Sprawdzone metody konfigurowania limitu czasu wejścia-wyjścia
Konfigurowanie limitu czasu wejścia-wyjścia na serwerze proxy API
Limit czasu wejścia-wyjścia można skonfigurować w tych miejscach serwera proxy interfejsu API:
- Docelowy punkt końcowy
- Zasady dotyczące wywołań usługi
Konfigurowanie limitu czasu wejścia-wyjścia w docelowym punkcie końcowym serwera proxy interfejsu API
Ta sekcja wyjaśnia, jak skonfigurować limit czasu wejścia-wyjścia w docelowym punkcie końcowym serwera proxy interfejsu API.
Limit czasu wejścia-wyjścia można skonfigurować we właściwości io.timeout.millis
, która
reprezentuje limit czasu wejścia/wyjścia w milisekundach.
- W interfejsie Edge wybierz konkretny serwer proxy interfejsu API, w którym chcesz skonfigurować nowy Wartość limitu czasu wejścia-wyjścia.
- Wybierz konkretny docelowy punkt końcowy, który chcesz zmienić.
- Dodaj właściwość
io.timeout.millis
z odpowiednią wartością w kolumnie<HTTPTargetConnection>
w konfiguracjiTargetEndpoint
. - Zapisz zmiany wprowadzone na serwerze proxy interfejsu API.
Aby na przykład zmienić limit czasu wejścia-wyjścia na 120 sekund, dodaj ten blok kodu:
<Properties> <Property name="io.timeout.millis">120000</Property> </Properties>
Właściwość io.timeout.millis
jest podawana w milisekundach, więc wartość dla
120 sekund to 120000
.
Poniższe przykłady pokazują, jak skonfigurować limit czasu wejścia-wyjścia w docelowym punkcie końcowym konfiguracja Twojego serwera proxy interfejsu API:
Przykładowa konfiguracja docelowego punktu końcowego z użyciem adresu URL serwera backendu
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="io.timeout.millis">120000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>
Przykładowa konfiguracja docelowego punktu końcowego przy użyciu serwera docelowego
<TargetEndpoint name="default"> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="io.timeout.millis">120000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </TargetEndpoint>
Konfigurowanie limitu czasu wejścia-wyjścia w zasadzie Serviceobjaśnienia serwera proxy interfejsu API
Z tej sekcji dowiesz się, jak skonfigurować limit czasu wejścia-wyjścia w zasadach ServiceCallout
Proxy API. Limit czasu wejścia-wyjścia można skonfigurować za pomocą elementu <Timeout>
lub właściwości io.timeout.millis
. Zarówno element <Timeout>
, jak i parametr
Właściwość io.timeout.millis
reprezentuje wartości czasu oczekiwania na operacje wejścia-wyjścia w milisekundach.
Limit czasu wejścia-wyjścia możesz skonfigurować w zasadzie ServiceCallout, korzystając z jednej z tych metod:
<Timeout>
element.io.timeout.millis
.
Element limitu czasu
Aby skonfigurować limit czasu wejścia-wyjścia w zasadzie ServiceCallout za pomocą <Timeout>
, wykonaj te czynności:
- W interfejsie Edge wybierz konkretny serwer proxy interfejsu API, na którym chcesz skonfigurować nową wartość limitu czasu wejścia-wyjścia dla zasady ServiceCallout.
- Wybierz konkretną zasadę dotyczącą objaśnień, którą chcesz zmienić.
- Dodaj element
<Timeout>
z odpowiednią wartością w kolumnie Konfiguracja<ServiceCallout>
.Aby np. zmienić limit czasu wejścia-wyjścia na 120 sekund, dodaj ten wiersz kodu:
<Timeout>120000</Timeout>
Element
<Timeout>
jest podany w milisekundach, więc wartość dla 120 sekund to120000
.Ten przykład pokazuje, jak skonfigurować limit czasu wejścia-wyjścia w wywołań usługi za pomocą elementu
<Timeout>
:Przykładowa konfiguracja zasady objaśnienia usługi z użyciem adresu URL serwera backendu
<ServiceCallout name="Service-Callout-1"> <DisplayName>ServiceCallout-1</DisplayName> <Timeout>120000</Timeout> <HTTPTargetConnection> <Properties/> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout>
- Zapisz zmiany wprowadzone na serwerze proxy interfejsu API.
Właściwość io.timeout.millis
Aby skonfigurować limit czasu wejścia-wyjścia w zasadzie ServiceCallout za pomocą metody
io.timeout.millis
, wykonaj te czynności:
- W interfejsie Edge wybierz konkretny serwer proxy interfejsu API, który chcesz skonfigurować nową wartość limitu czasu wejścia-wyjścia dla zasady ServiceCallout.
- Wybierz konkretną zasadę dotyczącą objaśnień, którą chcesz zmienić.
- Dodaj właściwość
io.timeout.millis
z odpowiednią wartością w kolumnie<HTTPTargetConnection>
element w konfiguracji TargetEndpoint.Aby np. zmienić limit czasu wejścia-wyjścia na 120 sekund, dodaj następujący blok: kodu:
<Properties> <Property name="io.timeout.millis">120000</Property> </Properties>
Właściwość
io.timeout.millis
jest podawana w milisekundach, więc wartość dla 120 sekund to120000
.Poniższe przykłady pokazują, jak skonfigurować limit czasu wejścia-wyjścia w docelowym punkcie końcowym konfiguracja Twojego serwera proxy interfejsu API:
Przykładowa konfiguracja zasady objaśnienia usługi z użyciem adresu URL serwera backendu
<ServiceCallout name="Service-Callout-1"> <DisplayName>ServiceCallout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="io.timeout.millis">120000</Property> </Properties> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout>
Przykładowa konfiguracja zasad objaśnienia usługi z użyciem serwera docelowego
<ServiceCallout enabled="true" name="Service-Callout-1"> <DisplayName>ServiceCallout-1</DisplayName> <Response>calloutResponse</Response> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="io.timeout.millis">120000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout>
- Zapisz zmiany wprowadzone na serwerze proxy interfejsu API.
Konfigurowanie limitu czasu wejścia-wyjścia w procesorach wiadomości
Ta sekcja zawiera instrukcje konfigurowania limitu czasu wejścia-wyjścia w procesorach wiadomości.
Limit czasu wejścia-wyjścia można skonfigurować we właściwości HTTPTransport.io.timeout.millis
,
reprezentujący limit czasu wejścia-wyjścia w milisekundach w komponencie procesora wiadomości,
używając tokena zgodnie ze składnią opisaną w
Konfiguracja
Edge.
Aby skonfigurować limit czasu wejścia-wyjścia w procesorach wiadomości, wykonaj te czynności:
- Na komputerze z procesorem wiadomości otwórz poniższy plik w edytorze. Jeśli nie
już istnieje, a następnie ją utwórz.
/opt/apigee/customer/application/message-processor.properties
Aby na przykład otworzyć plik przy użyciu
vi
wpisz to polecenie:vi /opt/apigee/customer/application/message-processor.properties
- Dodaj do pliku właściwości wiersz w poniższym formacie, zastępując wartość
TIME_IN_MILLISECONDS:
conf_http_HTTPTransport.io.timeout.millis=TIME_IN_MILLISECONDS
Aby na przykład zmienić limit czasu wejścia-wyjścia w procesorze wiadomości na 120 sekund, dodaj ten wiersz:
conf_http_HTTPTransport.io.timeout.millis=120000
- Zapisz zmiany.
- Upewnij się, że plik właściwości należy do użytkownika
apigee
, jak pokazano poniżej:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Ponownie uruchom procesor wiadomości, jak pokazano poniżej:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Jeśli masz więcej niż jeden procesor wiadomości, powtórz powyższe kroki dla wszystkich Procesory.
Weryfikowanie limitu czasu wejścia-wyjścia w procesorach wiadomości
W tej sekcji wyjaśniamy, jak sprawdzić, czy limit czasu wejścia-wyjścia został poprawnie zmieniony Procesory wiadomości.
Mimo że używasz tokena conf_http_HTTPTransport.io.timeout.millis
do ustawiania
Upłynął limit czasu wejścia-wyjścia na procesorze wiadomości. Musisz sprawdzić, czy rzeczywista usługa
W polu HTTPTransport.io.timeout.millis
ustawiono nową wartość.
- Na komputerze z procesorem wiadomości wyszukaj usługę
HTTPTransport.io.timeout.millis
w katalogu/opt/apigee/edge-message-processor/conf
i sprawdź, czy została ustawiona na nową wartość, jak pokazano poniżej:grep -ri "HTTPTransport.io.timeout.millis" /opt/apigee/edge-message-processor/conf
- Jeśli nowa wartość limitu czasu wejścia-wyjścia została poprawnie ustawiona w procesorze wiadomości,
pokazuje nową wartość w pliku
http.properties
. - Jeśli nadal widzisz starą wartość właściwości
HTTPTransport.io.timeout.millis
, Następnie sprawdź, czy wykonano wszystkie czynności opisane w Prawidłowo skonfiguruj limit czasu wejścia-wyjścia w procesorach wiadomości. Jeśli pominął jakieś kroki, poprawnie powtórz wszystkie kroki. - Jeśli nadal nie możesz zmienić limitu czasu wejścia-wyjścia, skontaktuj się z Obsługa Apigee Edge
Przykładowy wynik z powyższego polecenia po skonfigurowaniu limitu czasu wejścia-wyjścia 120 sekund wygląda tak:
/opt/apigee/edge-message-processor/conf/http.properties:HTTPTransport.io.timeout.millis=120000
Zwróć uwagę na to, że w przykładowych danych wyjściowych powyżej
Parametr HTTPTransport.io.timeout.millis
został ustawiony z nową wartością 120000
w
http.properties
Oznacza to, że limit czasu wejścia-wyjścia został skonfigurowany
do 120 sekund w procesorze wiadomości.
Co dalej?
Więcej informacji o Konfigurowanie limitu czasu wejścia-wyjścia w routerach