Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation weitere Informationen
In diesem Dokument wird erläutert, wie Sie das Keep-Alive-Zeitlimit für die Apigee Edge-Nachrichtenprozessoren konfigurieren.
Das Keep-Alive-Zeitlimit des Message Processor ermöglicht es einer einzelnen TCP-Verbindung, mehrere HTTP-Anfragen/-Antworten vom/an den Back-End-Server zu senden und zu empfangen, anstatt für jedes Anfrage/Antwort-Paar eine neue Verbindung herzustellen.
Der Standardwert der Keep-Alive-Zeitüberschreitungseigenschaft auf dem Message Processor beträgt 60
Sekunden. Dieses Zeitlimit gilt für die Back-End-Server, die in der Konfiguration des Zielendpunkts und in der Richtlinie ServiceCallout
Ihres API-Proxys konfiguriert sind.
Das Keep-Alive-Zeitlimit für Message Processors kann je nach Bedarf auf den Standardwert von 60
Sekunden erhöht oder gesenkt werden. Es kann auf folgende Arten konfiguriert werden:
- Im API-Proxy:
- Am Zielendpunkt
- In der Richtlinie „
ServiceCallout
“
- Auf dem Message Processor
Die folgenden Eigenschaften steuern das Keep-Alive-Zeitlimit auf den Message Processorn:
Property-Name | Standort | Beschreibung |
---|---|---|
keepalive.timeout.millis |
API-Proxy:
|
Dies ist die maximale Leerlaufzeit, die der Message Processor für eine einzelne TCP-Verbindung zulässt, um mehrere HTTP-Anfragen/-Antworten zu senden und zu empfangen, anstatt für jedes Anfrage/Antwort-Paar eine neue Verbindung herzustellen. Standardmäßig verwendet dieses Attribut den Wert, der für das Attribut Wenn dieses Attribut mit einem neuen Zeitlimitwert für den im Zielendpunkt verwendeten Zielserver oder der Richtlinie |
HTTPClient.keepalive.timeout.millis |
Message Processor |
Dies ist die maximale Leerlaufzeit, während der Message Processor einer einzelnen TCP-Verbindung das Senden und Empfangen mehrerer HTTP-Anfragen/-Antworten erlaubt, anstatt für jedes Anfrage/Antwort-Paar eine neue Verbindung herzustellen. Diese Eigenschaft wird für alle API-Proxys verwendet, die auf diesem Message Processor ausgeführt werden. Der Standardwert dieser Property beträgt Sie können dieses Attribut entweder wie im Abschnitt Keep-Alive-Zeitlimit für Nachrichtenprozessoren konfigurieren unten beschrieben ändern oder diesen Wert überschreiben, indem Sie das Attribut |
Hinweis
Bevor Sie die Schritte in diesem Dokument ausführen, sollten Sie sich mit den folgenden Themen vertraut machen:
- Wenn Sie mit dem Keep-Alive-Zeitlimit nicht vertraut sind, lesen Sie die Beschreibung des Attributs
keepalive.timeout.millis
unter TargetEndpoint Transport Property Specification. - Wenn Sie mit dem Konfigurieren von Eigenschaften für Edge in der Private Cloud nicht vertraut sind, lesen Sie Edge konfigurieren.
Keep-Alive-Zeitlimit im API-Proxy konfigurieren
Das Keep-Alive-Zeitlimit kann im API-Proxy an den folgenden Stellen 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 für das Keep-Alive-Zeitlimit in Millisekunden darstellt.
- Wählen Sie in der Edge-Benutzeroberfläche den API-Proxy aus, in dem Sie den neuen Keep-Alive-Zeitlimitwert konfigurieren möchten.
- Wählen Sie den Zielendpunkt aus, den Sie ändern möchten.
-
Fügen Sie das Attribut
keepalive.timeout.millis
mit einem geeigneten Wert unter dem Element<HTTPTargetConnection>
in derTargetEndpoint
-Konfiguration hinzu.Wenn Sie beispielsweise das Keep-Alive-Zeitlimit in
30
Sekunden ändern möchten, fügen Sie den folgenden Codeblock hinzu:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
Da das Attribut
keepalive.timeout.millis
in Millisekunden angegeben wird, beträgt der Wert für30
Sekunden30000
.Die folgenden Beispiele zeigen, wie Sie das Keep-Alive-Zeitlimit in der Zielendpunktkonfiguration Ihres API-Proxys konfigurieren:
Beispiel für die Konfiguration eines Zielendpunkts mit der 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 die Konfiguration eines Zielendpunkts 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 an Ihrem API-Proxy vorgenommenen Änderungen.
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 Richtlinie ServiceCallout
Ihres API-Proxys konfigurieren. Das Keep-Alive-Zeitlimit kann über das Attribut the keepalive.timeout.millis
konfiguriert werden, das den Wert für das Keep-Alive-Zeitlimit in Millisekunden darstellt.
So konfigurieren Sie das Keep-Alive-Zeitlimit in der Richtlinie ServiceCallout
mit dem Attribut keepalive.timeout.millis
:
- Wählen Sie in der Edge-Benutzeroberfläche den API-Proxy aus, in dem Sie den neuen Keep-Alive-Zeitlimitwert für die Richtlinie
ServiceCallout
konfigurieren möchten. - Wählen Sie die spezifische
ServiceCallout
-Richtlinie aus, die Sie ändern möchten. - Fügen Sie das Attribut
keepalive.timeout.millis
mit einem geeigneten Wert unter dem Element<HTTPTargetConnection>
in derTargetEndpoint
-Konfiguration hinzu.Wenn Sie beispielsweise das Keep-Alive-Zeitlimit in
30
Sekunden ändern möchten, fügen Sie den folgenden Codeblock hinzu:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
Da das Attribut
keepalive.timeout.millis
in Millisekunden angegeben wird, beträgt der Wert für30
Sekunden30000
.Die folgenden Beispiele zeigen, wie Sie das Keep-Alive-Zeitlimit in der Richtlinie
ServiceCallout
Ihres API-Proxys konfigurieren:Beispiel für die Konfiguration einer ServiceCallout-Richtlinie mit der 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 die Konfiguration einer ServiceCallout-Richtlinie 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 an Ihrem API-Proxy vorgenommenen Änderungen.
Konfigurieren des Keep-Alive-Zeitlimits bei Message Processorn
In diesem Abschnitt wird erläutert, wie das Keep-Alive-Zeitlimit auf den Message Processorn konfiguriert wird. Das Keep-Alive-Zeitlimit kann über das Attribut HTTPClient.keepalive.timeout.millis
konfiguriert werden, das den Wert für das Keep-Alive-Zeitlimit in Millisekunden für die Message Processor-Komponente darstellt. Da diese Eigenschaft im Message Processor kommentiert ist, müssen Sie die spezielle Syntax conf/http.properties+HTTPClient.keepalive.timeout.millis
verwenden, wie im Abschnitt
Legen Sie ein Token festlegen, das derzeit auskommentiert ist in Edge konfigurieren beschrieben wird.
So konfigurieren Sie das Keep-Alive-Zeitlimit für die Message Processor:
- Ö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 beispielsweise das Keep-Alive-Zeitlimit des Message Processor auf
30
Sekunden ändern möchten, fügen Sie die folgende Zeile hinzu:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- Speichern Sie die Änderungen.
- Prüfen Sie, ob der Inhaber der Property-Datei dem
apigee
-Nutzer ist (siehe unten):chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Starten Sie den Message Processor wie unten gezeigt neu:
/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 Processor.
Keep-Alive-Zeitlimit bei Message Processorn verifizieren
In diesem Abschnitt wird erläutert, wie Sie überprüfen können, ob das Keep-Alive-Zeitlimit auf den Message Processorn erfolgreich geändert wurde.
Obwohl Sie die spezielle Syntax conf/http.properties+HTTPClient.keepalive.timeout.millis
zum Festlegen des Keep-Alive-Zeitlimits für den Nachrichtenprozessor verwenden, 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/conf
nach dem AttributHTTPClient.keepalive.timeout.millis
und prüfen Sie, ob es mit dem neuen Wert festgelegt wurde (siehe unten):grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
Wenn der neue Keep-Alive-Zeitüberschreitungswert erfolgreich auf dem Message Processor festgelegt wurde, zeigt der obige Befehl den neuen Wert in der Datei
http.properties
an.Das Beispielergebnis des obigen Befehls, nachdem Sie das Keep-Alive-Zeitlimit auf
30
Sekunden konfiguriert haben, sieht so aus:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
In der obigen Beispielausgabe wurde das Attribut
HTTPClient.keepalive.timeout.millis
mit dem neuen Wert30000
inhttp.properties
festgelegt. Dies bedeutet, dass das Keep-Alive-Zeitlimit im Message Processor erfolgreich auf30
Sekunden konfiguriert wurde. - Wenn noch der alte Wert für das Attribut
HTTPClient.keepalive.timeout.millis
angezeigt wird, prüfen Sie, ob Sie alle Schritte unter Keep-Alive-Zeitlimit für Nachrichtenprozessoren konfigurieren korrekt ausgeführt haben. Wenn Sie einen Schritt ausgelassen haben, wiederholen Sie alle Schritte korrekt. - Wenn Sie das Keep-Alive-Zeitlimit immer noch nicht ändern können, wenden Sie sich an den Apigee Edge-Support von Google Cloud.