Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację
Apigee X. info
Z tego dokumentu dowiesz się, jak skonfigurować czas oczekiwania na utrzymanie połączenia dla procesorów wiadomości Apigee Edge.
Czas oczekiwania na utrzymanie połączenia w procesorze komunikatów umożliwia wysyłanie i odbieranie wielu żądań/odpowiedzi HTTP z serwera backendu za pomocą jednego połączenia TCP zamiast otwierania nowego połączenia dla każdej pary żądanie/odpowiedź.
Domyślna wartość właściwości czasu oczekiwania na utrzymanie aktywności w procesorze komunikatów to
60 sekund. Ten czas oczekiwania dotyczy serwerów backendu skonfigurowanych
w konfiguracji docelowego punktu końcowego oraz w zasadzie ServiceCallout proxy interfejsu API.
Czas oczekiwania na utrzymanie połączenia w procesorach wiadomości można zwiększyć lub zmniejszyć w zależności od potrzeb w stosunku do wartości domyślnej
wynoszącej 60 sekund. Można go skonfigurować na te sposoby:
- W proxy interfejsu API
- W docelowym punkcie końcowym
- W zasadzie
ServiceCallout
- W procesorze komunikatów
Te właściwości kontrolują czas oczekiwania na utrzymanie połączenia w procesorach wiadomości:
| Nazwa właściwości | Lokalizacja | Opis |
|---|---|---|
keepalive.timeout.millis |
Proxy interfejsu API:
|
Jest to maksymalny czas bezczynności, przez który procesor komunikatów zezwala na wysyłanie i odbieranie wielu żądań/odpowiedzi HTTP za pomocą jednego połączenia TCP zamiast otwierania nowego połączenia dla każdej pary żądanie/odpowiedź. Domyślnie ta właściwość przyjmuje wartość ustawioną dla
Jeśli ta właściwość zostanie zmodyfikowana z nową wartością czasu oczekiwania dla serwera docelowego używanego w
docelowym punkcie końcowym lub w zasadzie |
HTTPClient.keepalive.timeout.millis |
Procesor komunikatów |
Jest to maksymalny czas bezczynności, przez który procesor komunikatów zezwala na wysyłanie i odbieranie wielu żądań/odpowiedzi HTTP za pomocą jednego połączenia TCP zamiast otwierania nowego połączenia dla każdej pary żądanie/odpowiedź. Ta właściwość jest używana w przypadku wszystkich proxy interfejsów API działających w tym procesorze komunikatów. Domyślna wartość tej właściwości to Możesz zmodyfikować tę właściwość zgodnie z opisem w
sekcji Konfigurowanie czasu oczekiwania na utrzymanie połączenia w procesorach wiadomości
poniżej lub zastąpić tę wartość, ustawiając |
Zanim zaczniesz
Zanim zaczniesz korzystać z instrukcji podanych w tym dokumencie, zapoznaj się z tymi tematami:
- Jeśli nie znasz czasu oczekiwania na utrzymanie połączenia, zapoznaj się z opisem właściwości
keepalive.timeout.millisw specyfikacji właściwości transportu TargetEndpoint. - Jeśli nie wiesz, jak skonfigurować właściwości Edge w Private Cloud, przeczytaj artykuł Konfigurowanie Edge.
Konfigurowanie czasu oczekiwania na utrzymanie połączenia w proxy interfejsu API
Czas oczekiwania na utrzymanie połączenia można skonfigurować w proxy interfejsu API w tych miejscach:
- Docelowy punkt końcowy
- Zasada
ServiceCallout
Konfigurowanie czasu oczekiwania na utrzymanie połączenia w docelowym punkcie końcowym proxy interfejsu API
W tej sekcji dowiesz się, jak skonfigurować czas oczekiwania na utrzymanie połączenia w docelowym punkcie końcowym proxy interfejsu API. Czas oczekiwania na utrzymanie połączenia można skonfigurować za pomocą właściwości
keepalive.timeout.millis, która reprezentuje wartość czasu oczekiwania na utrzymanie połączenia w
milisekundach.
- W interfejsie Edge wybierz konkretne proxy interfejsu API, w którym chcesz skonfigurować nową wartość czasu oczekiwania na utrzymanie połączenia.
- Wybierz konkretny docelowy punkt końcowy, który chcesz zmodyfikować.
-
Dodaj właściwość
keepalive.timeout.millisz odpowiednią wartością w elemencie<HTTPTargetConnection>w konfiguracjiTargetEndpoint.Aby na przykład zmienić czas oczekiwania na utrzymanie połączenia na
30sekund, dodaj ten blok kodu:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
Właściwość
keepalive.timeout.millisjest podawana w milisekundach, więc wartość dla30sekund to30000.Poniższe przykłady pokazują, jak skonfigurować czas oczekiwania na utrzymanie połączenia w konfiguracji docelowego punktu końcowego 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="keepalive.timeout.millis">30000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>Przykładowa konfiguracja docelowego punktu końcowego z użyciem serwera docelowego
<TargetEndpoint name="default"> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </TargetEndpoint> - Zapisz zmiany wprowadzone w proxy interfejsu API.
Konfigurowanie czasu oczekiwania na utrzymanie połączenia w zasadzie ServiceCallout proxy interfejsu API
W tej sekcji dowiesz się, jak skonfigurować czas oczekiwania na utrzymanie połączenia w
ServiceCallout zasadzie proxy interfejsu API. Czas oczekiwania na utrzymanie połączenia można skonfigurować za pomocą
właściwości the keepalive.timeout.millis, która reprezentuje
wartość czasu oczekiwania na utrzymanie połączenia w milisekundach.
Aby skonfigurować czas oczekiwania na utrzymanie połączenia w zasadzie ServiceCallout za pomocą właściwości
keepalive.timeout.millis:
- W interfejsie Edge wybierz konkretne proxy interfejsu API, w którym chcesz skonfigurować nową
wartość czasu oczekiwania na utrzymanie połączenia w zasadzie
ServiceCallout. - Wybierz konkretną zasadę
ServiceCallout, którą chcesz zmodyfikować. - Dodaj właściwość
keepalive.timeout.millisz odpowiednią wartością w elemencie<HTTPTargetConnection>w konfiguracjiTargetEndpoint.Aby na przykład zmienić czas oczekiwania na utrzymanie połączenia na
30sekund, dodaj ten blok kodu:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
Właściwość
keepalive.timeout.millisjest podawana w milisekundach, więc wartość dla30sekund to30000.Poniższe przykłady pokazują, jak skonfigurować czas oczekiwania na utrzymanie połączenia w
ServiceCalloutzasadzie proxy interfejsu API:Przykładowa konfiguracja zasady ServiceCallout z użyciem adresu URL serwera backendu
<ServiceCallout name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout>Przykładowa konfiguracja zasady ServiceCallout z użyciem serwera docelowego
<ServiceCallout enabled="true" name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <Response>calloutResponse</Response> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout> - Zapisz zmiany wprowadzone w proxy interfejsu API.
Konfigurowanie czasu oczekiwania na utrzymanie połączenia w procesorach wiadomości
W tej sekcji dowiesz się, jak skonfigurować czas oczekiwania na utrzymanie połączenia w procesorach wiadomości. Czas oczekiwania na utrzymanie aktywności można skonfigurować za pomocą właściwości
HTTPClient.keepalive.timeout.millis, która reprezentuje wartość czasu oczekiwania na utrzymanie aktywności
w milisekundach w komponencie procesora komunikatów. Ponieważ ta właściwość jest zakomentowana w procesorze komunikatów, musisz użyć specjalnej składni conf/http.properties+HTTPClient.keepalive.timeout.millis, jak opisano w sekcji
Ustawianie tokena, który jest obecnie zakomentowany w artykule Konfigurowanie Edge.
Aby skonfigurować czas oczekiwania na utrzymanie połączenia w procesorach wiadomości:
- Na maszynie procesora komunikatów otwórz ten plik w edytorze. Jeśli plik nie istnieje, utwórz go.
/opt/apigee/customer/application/message-processor.properties
Aby na przykład otworzyć plik za pomocą
vi, wpisz:vi /opt/apigee/customer/application/message-processor.properties
- Dodaj wiersz w tym formacie do pliku właściwości, zastępując wartość dla
TIME_IN_MILLISECONDS:
conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
Aby na przykład zmienić czas oczekiwania na utrzymanie połączenia w procesorze komunikatów na
30sekund, dodaj ten wiersz:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- Zapisz zmiany.
- Upewnij się, że właścicielem pliku właściwości jest użytkownik
apigee, jak pokazano poniżej:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Uruchom ponownie procesor komunikatów, jak pokazano poniżej:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Jeśli masz więcej niż 1 procesor komunikatów, powtórz powyższe czynności na wszystkich procesorach komunikatów.
Sprawdzanie czasu oczekiwania na utrzymanie połączenia w procesorach wiadomości
W tej sekcji dowiesz się, jak sprawdzić, czy czas oczekiwania na utrzymanie połączenia został prawidłowo zmodyfikowany w procesorach wiadomości.
Mimo że do ustawienia czasu oczekiwania na utrzymanie połączenia w procesorze wiadomości używasz specjalnej składni
conf/http.properties+HTTPClient.keepalive.timeout.millis , musisz sprawdzić, czy rzeczywista właściwość
HTTPClient.keepalive.timeout.millis została ustawiona na nową wartość.
- Na maszynie procesora komunikatów wyszukaj właściwość
HTTPClient.keepalive.timeout.millisw katalogu/opt/apigee/edge-message-processor/confi sprawdź, czy została ustawiona na nową wartość, jak pokazano poniżej:grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
Jeśli nowa wartość czasu oczekiwania na utrzymanie aktywności zostanie prawidłowo ustawiona w procesorze komunikatów, to powyższe polecenie wyświetli nową wartość w pliku
http.properties.Przykładowy wynik powyższego polecenia po skonfigurowaniu czasu oczekiwania na utrzymanie połączenia na
30sekund wygląda tak:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
W powyższym przykładzie zwróć uwagę, że właściwość
HTTPClient.keepalive.timeout.milliszostała ustawiona na nową wartość30000whttp.properties. Oznacza to, że czas oczekiwania na utrzymywanie aktywności został prawidłowo skonfigurowany na30sekund w procesorze komunikatów. - Jeśli nadal widzisz starą wartość właściwości
HTTPClient.keepalive.timeout.millis, sprawdź, czy prawidłowo wykonano wszystkie czynności opisane w sekcji Konfigurowanie czasu oczekiwania na utrzymanie połączenia w procesorach wiadomości. Jeśli pominiesz jakiś krok, powtórz wszystkie czynności. - Jeśli nadal nie możesz zmodyfikować czasu oczekiwania na utrzymanie połączenia, skontaktuj się z zespołem pomocy Google Cloud Apigee Edge.