Sie lesen gerade die Dokumentation zu Apigee Edge.
Zur Dokumentation zu
Apigee X. info
In diesem Dokument wird erläutert, wie Sie das Keep-Alive-Zeitlimit für die Apigee Edge Message Processors konfigurieren.
Das Keep-Alive-Zeitlimit im Message Processor ermöglicht einer einzelnen TCP-Verbindung das Senden und Empfangen mehrerer HTTP-Anfragen/-Antworten vom/zum Back-End-Server, anstatt eine neue Verbindung für jedes Anfrage-/Antwort-Paar herzustellen.
Der Standardwert des Keep-Alive-Zeitlimitattributs im Message Processor beträgt
60 Sekunden. Dieser Zeitraum gilt für die Back-End-Server, die
in der Zielendpunktkonfiguration und in der ServiceCallout Richtlinie Ihres
API-Proxys konfiguriert sind.
Das Keep-Alive-Zeitlimit für Message Processors kann je nach Bedarf vom Standardwert
von 60 Sekunden erhöht oder verringert werden. Es kann auf folgende Arten konfiguriert werden:
- Im API-Proxy
- Im Zielendpunkt
- In der
ServiceCallout-Richtlinie
- Im Message Processor
Die folgenden Attribute steuern das Keep-Alive-Zeitlimit in den Message Processors:
| Property-Name | Standort | Beschreibung |
|---|---|---|
keepalive.timeout.millis |
API-Proxy:
|
Dies ist die maximale Leerlaufzeit, für die der Message Processor einer einzelnen TCP Verbindung das Senden und Empfangen mehrerer HTTP-Anfragen/-Antworten erlaubt, anstatt eine neue Verbindung für jedes Anfrage-/Antwort-Paar zu öffnen. Standardmäßig wird für dieses Attribut der Wert verwendet, der für das
Wenn dieses Attribut mit einem neuen Zeitlimitwert für den Zielserver geändert wird, der im
Zielendpunkt oder in der |
HTTPClient.keepalive.timeout.millis |
Message Processor |
Dies ist die maximale Leerlaufzeit, für die der Message Processor einer einzelnen TCP Verbindung das Senden und Empfangen mehrerer HTTP-Anfragen/-Antworten erlaubt, anstatt eine neue Verbindung für jedes Anfrage-/Antwort-Paar zu öffnen. Dieses Attribut wird für alle API-Proxys verwendet, die auf diesem Message Processor ausgeführt werden. Der Standardwert dieses Attributs ist Sie können dieses Attribut entweder wie unten unter
Keep-Alive-Zeitlimit in Message Processors konfigurieren
beschrieben ändern oder diesen Wert überschreiben, indem Sie das |
Hinweis
Bevor Sie die Schritte in diesem Dokument ausführen, sollten Sie mit den folgenden Themen vertraut sein:
- Wenn Sie mit dem Keep-Alive-Zeitlimit nicht vertraut sind, lesen Sie die
keepalive.timeout.millisBeschreibung des Attributs in Spezifikation des TargetEndpoint Transport-Attributs. - Wenn Sie nicht wissen, wie Sie Attribute für Edge in Private Cloud konfigurieren, lesen Sie den Artikel Edge konfigurieren.
Keep-Alive-Zeitlimit im API-Proxy konfigurieren
Das Keep-Alive-Zeitlimit kann an den folgenden Stellen im API-Proxy konfiguriert werden:
- Zielendpunkt
ServiceCallout-Richtlinie
Keep-Alive-Zeitlimit im Zielendpunkt des API-Proxys konfigurieren
In diesem Abschnitt wird erläutert, wie Sie das Keep-Alive-Zeitlimit im Zielendpunkt Ihres
API-Proxys konfigurieren. Das Keep-Alive-Zeitlimit kann über das Attribut
keepalive.timeout.millis konfiguriert werden, das den Wert des Keep-Alive-Zeitlimits in
Millisekunden darstellt.
- Wählen Sie in der Edge-UI den API-Proxy aus, in dem Sie den neuen Wert für das Keep-Alive-Zeitlimit konfigurieren möchten.
- Wählen Sie den Zielendpunkt aus, den Sie ändern möchten.
-
Fügen Sie das Attribut
keepalive.timeout.millismit einem geeigneten Wert unter dem<HTTPTargetConnection>Element in derTargetEndpointKonfiguration hinzu.Wenn Sie das Keep-Alive-Zeitlimit beispielsweise auf
30Sekunden ändern möchten, fügen Sie den folgenden Codeblock hinzu:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
Da das Attribut
keepalive.timeout.millisin Millisekunden angegeben wird, ist der Wert für30Sekunden30000.Die folgenden Beispiele zeigen, wie Sie das Keep-Alive-Zeitlimit in der Zielendpunkt Konfiguration Ihres API-Proxys konfigurieren:
Beispiel für eine Zielendpunktkonfiguration mit einer URL für den Back-End-Server
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>Beispiel für eine Zielendpunktkonfiguration mit einem Zielserver
<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> - Speichern Sie die Änderungen am API-Proxy.
Keep-Alive-Zeitlimit in der ServiceCallout-Richtlinie des API-Proxys konfigurieren
In diesem Abschnitt wird erläutert, wie Sie das Keep-Alive-Zeitlimit in der
ServiceCallout Richtlinie Ihres API-Proxys konfigurieren. Das Keep-Alive-Zeitlimit kann über das
Attribut the keepalive.timeout.millis konfiguriert werden, das
den Wert des Keep-Alive-Zeitlimits in Millisekunden darstellt.
So konfigurieren Sie das Keep-Alive-Zeitlimit in der ServiceCallout Richtlinie mit dem
keepalive.timeout.millis Attribut:
- Wählen Sie in der Edge-UI den API-Proxy aus, in dem Sie den neuen
Wert für das Keep-Alive-Zeitlimit für die
ServiceCalloutRichtlinie konfigurieren möchten. - Wählen Sie die
ServiceCallout-Richtlinie aus, die Sie ändern möchten. - Fügen Sie in der
TargetEndpointKonfiguration unter dem<HTTPTargetConnection>Element das Attributkeepalive.timeout.millismit einem geeigneten Wert hinzu.Wenn Sie das Keep-Alive-Zeitlimit beispielsweise auf
30Sekunden ändern möchten, fügen Sie den folgenden Codeblock hinzu:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
Da das Attribut
keepalive.timeout.millisin Millisekunden angegeben wird, ist der Wert für30Sekunden30000.Die folgenden Beispiele zeigen, wie Sie das Keep-Alive-Zeitlimit in der
ServiceCalloutRichtlinie Ihres API-Proxys konfigurieren:Beispiel für eine ServiceCallout-Richtlinienkonfiguration mit einer URL für den Back-End-Server
<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>Beispiel für eine ServiceCallout-Richtlinienkonfiguration mit einem Zielserver
<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> - Speichern Sie die Änderungen am API-Proxy.
Keep-Alive-Zeitlimit in Message Processors konfigurieren
In diesem Abschnitt wird erläutert, wie Sie das Keep-Alive-Zeitlimit in den Message Processors konfigurieren. Das
Keep-Alive-Zeitlimit kann über das Attribut
HTTPClient.keepalive.timeout.millis, das den Wert des Keep-Alive-Zeitlimits
in Millisekunden in der Message Processor-Komponente darstellt, konfiguriert werden. Da dieses Attribut im
Message Processor auskommentiert ist, müssen Sie die spezielle Syntax
conf/http.properties+HTTPClient.keepalive.timeout.millis verwenden, wie im Abschnitt
Ein derzeit auskommentiertes Token festlegen unter
Edge konfigurieren beschrieben.
So konfigurieren Sie das Keep-Alive-Zeitlimit in den Message Processors:
- Öffnen Sie auf dem Message Processor-Computer die folgende Datei in einem Editor. Wenn sie noch nicht vorhanden ist, erstellen Sie sie.
/opt/apigee/customer/application/message-processor.properties
Wenn Sie die Datei beispielsweise mit
viöffnen möchten, geben Sie Folgendes ein:vi /opt/apigee/customer/application/message-processor.properties
- Fügen Sie der Attributdatei eine Zeile im folgenden Format hinzu und ersetzen Sie
TIME_IN_MILLISECONDS durch einen Wert:
conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
Wenn Sie das Keep-Alive-Zeitlimit im Message Processor beispielsweise auf
30Sekunden ändern möchten, fügen Sie die folgende Zeile hinzu:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- Speichern Sie die Änderungen.
- Achten Sie darauf, dass die Attributdatei dem Nutzer
apigeegehört, wie unten gezeigt:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Starten Sie den Message Processor neu, wie unten gezeigt:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Wenn Sie mehr als einen Message Processor haben, wiederholen Sie die obigen Schritte für alle Message Processors.
Keep-Alive-Zeitlimit in Message Processors überprüfen
In diesem Abschnitt wird erläutert, wie Sie überprüfen, ob das Keep-Alive-Zeitlimit in den Message Processors erfolgreich geändert wurde.
Obwohl Sie die spezielle Syntax
conf/http.properties+HTTPClient.keepalive.timeout.millis verwenden, um das Keep-Alive
Zeitlimit im Message Processor festzulegen, müssen Sie prüfen, ob das tatsächliche Attribut
HTTPClient.keepalive.timeout.millis mit dem neuen Wert festgelegt wurde.
- Suchen Sie auf dem Message Processor-Computer im Verzeichnis
/opt/apigee/edge-message-processor/confnach dem AttributHTTPClient.keepalive.timeout.millisund prüfen Sie, ob es mit dem neuen Wert festgelegt wurde, wie unten gezeigt:grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
Wenn der neue Wert für das Keep-Alive-Zeitlimit im Message Processor festgelegt wurde, wird der neue Wert im obigen Befehl in der Datei
http.propertiesangezeigt.Das Beispielergebnis des obigen Befehls, nachdem Sie das Keep-Alive-Zeitlimit auf
30Sekunden konfiguriert haben, sieht so aus:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
In der obigen Beispielausgabe sehen Sie, dass das Attribut
HTTPClient.keepalive.timeout.millisinhttp.propertiesmit dem neuen Wert30000festgelegt wurde. Das bedeutet, dass das Keep-Alive Zeitlimit im Message Processor erfolgreich auf30Sekunden konfiguriert wurde. - Wenn Sie immer noch den alten Wert für das Attribut
HTTPClient.keepalive.timeout.millissehen, prüfen Sie, ob Sie alle Schritte unter Keep-Alive-Zeitlimit in Message Processors konfigurieren korrekt ausgeführt haben. Wenn Sie einen Schritt ausgelassen haben, wiederholen Sie alle Schritte noch einmal. - Wenn Sie das Keep-Alive-Zeitlimit immer noch nicht ändern können, wenden Sie sich an den Google Cloud Apigee Edge-Support.