Vous consultez la documentation d'Apigee Edge.
Consultez la
documentation Apigee X. en savoir plus
Ce document explique comment configurer le délai d'expiration de la connexion pour les processeurs de messages Apigee Edge.
Le délai avant expiration de la connexion représente la durée pendant laquelle le processeur de messages attend pour établir une connexion avec le serveur cible. La valeur par défaut de la propriété du délai de connexion sur le processeur de messages est de 3
secondes. Ce délai s'applique aux serveurs backend configurés dans la configuration du point de terminaison cible et dans la règle ServiceCallout
de votre proxy d'API.
Le délai d'expiration de la connexion pour les processeurs de messages peut être augmenté ou réduit à partir de la valeur par défaut de 3
secondes en fonction de vos besoins. Il peut être configuré comme suit:
- Dans le proxy d'API :
- Dans le point de terminaison cible
- Dans la règle
ServiceCallout
- Sur le processeur de messages
Les propriétés suivantes contrôlent le délai d'expiration de la connexion sur les processeurs de messages:
Nom de propriété | Emplacement | Description |
---|---|---|
connect.timeout.millis |
Proxy d'API :
|
Il s'agit du délai maximal que le processeur de messages attend pour se connecter au serveur cible.
Par défaut, cette propriété utilise la valeur définie pour la propriété Si cette propriété est modifiée avec une nouvelle valeur de délai d'expiration pour le serveur cible associé à un proxy d'API, le temps de connexion uniquement pour ce serveur cible est affecté. |
HTTPClient.connect.timeout.millis |
Processeur de messages |
Il s'agit du délai maximal que le processeur de messages attend pour se connecter au serveur cible. Cette propriété est utilisée pour tous les proxys d'API exécutés sur ce processeur de messages.
La valeur par défaut de cette propriété est de
Vous pouvez modifier cette propriété comme expliqué dans la section
Configurer le délai d'expiration de la connexion sur les processeurs de messages ci-dessous ou écraser cette valeur en définissant la propriété |
Avant de commencer
Avant de suivre la procédure décrite dans ce document, assurez-vous de bien comprendre les sujets suivants:
- Si vous ne connaissez pas le délai avant expiration de la connexion, consultez la description de la propriété
connect.timeout.millis
dans la spécification de la propriété de transport du point de terminaison cible. - Si vous ne savez pas comment configurer les propriétés de Edge sur Private Cloud, consultez la section Comment configurer Edge.
Configuration du délai avant expiration de la connexion dans le proxy d'API
Le délai avant expiration de la connexion peut être configuré dans le proxy d'API aux endroits suivants:
- Point de terminaison cible
- Règle
ServiceCallout
Configuration du délai d'expiration de la connexion dans le point de terminaison cible du proxy d'API
Cette section explique comment configurer le délai d'expiration de la connexion dans le point de terminaison cible de votre proxy d'API.
Le délai avant expiration de la connexion peut être configuré via la propriété connect.timeout.millis
, qui représente la valeur du délai avant expiration de la connexion en millisecondes.
- Dans l'interface utilisateur Edge, sélectionnez le proxy d'API spécifique dans lequel vous souhaitez configurer la nouvelle valeur de délai d'expiration de la connexion.
- Sélectionnez le point de terminaison cible spécifique que vous souhaitez modifier.
- Ajoutez la propriété
connect.timeout.millis
avec une valeur appropriée sous l'élément<HTTPTargetConnection>
dans la configurationTargetEndpoint
.Par exemple, pour définir le délai d'expiration de la connexion sur
5
secondes, ajoutez le bloc de code suivant:<Properties> <Property name="connect.timeout.millis">5000</Property> </Properties>
Étant donné que la propriété
connect.timeout.millis
est exprimée en millisecondes, la valeur pour5
secondes est5000
.Les exemples suivants montrent comment configurer le délai d'expiration de la connexion dans la configuration du point de terminaison cible de votre proxy d'API:
Exemple de configuration d'un point de terminaison cible avec l'URL du serveur backend
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>
Exemple de configuration d'un point de terminaison cible avec un serveur cible
<TargetEndpoint name="default"> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </TargetEndpoint>
- Enregistrez les modifications apportées à votre proxy d'API.
Configuration du délai avant expiration de la connexion dans la règle ServiceCallout du proxy d'API
Cette section explique comment configurer le délai avant expiration de la connexion dans la règle ServiceCallout
de votre proxy d'API. Le délai avant expiration de la connexion peut être configuré via la propriété connect.timeout.millis
, qui représente la valeur du temps de connexion en millisecondes.
Pour configurer le délai avant expiration de la connexion dans la règle ServiceCallout
à l'aide de la propriété connect.timeout.millis
:
- Dans l'interface utilisateur Edge, sélectionnez le proxy d'API spécifique dans lequel vous souhaitez configurer la nouvelle valeur de délai avant expiration de la connexion pour la règle
ServiceCallout
. - Sélectionnez la règle
ServiceCallout
que vous souhaitez modifier. - Ajoutez la propriété
connect.timeout.millis
avec une valeur appropriée sous l'élément<HTTPTargetConnection>
dans la configurationTargetEndpoint
.Par exemple, pour définir le délai d'expiration de la connexion sur
5
secondes, ajoutez le bloc de code suivant:<Properties> <Property name="connect.timeout.millis">5000</Property> </Properties>
Étant donné que la propriété
connect.timeout.millis
est exprimée en millisecondes, la valeur pour5
secondes est5000
.Les exemples suivants montrent comment configurer le délai d'expiration de la connexion dans la règle
ServiceCallout
de votre proxy d'API:Exemple de configuration de la règle ServiceAppel à l'aide d'une URL pour le serveur backend
<ServiceCallout name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="connect.timeout.millis">5000</Property> </Properties> <URL>https://mocktarget.apigee.net/json</URL> </HTTPTargetConnection> </ServiceCallout>
Exemple de configuration de la règle ServiceAppel avec un serveur cible
<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="connect.timeout.millis">5000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout>
- Enregistrez les modifications apportées à votre proxy d'API.
Configuration du délai d'expiration de la connexion sur les processeurs de messages
Cette section explique comment configurer le délai d'expiration de la connexion sur les processeurs de messages.
Le délai avant expiration de la connexion peut être configuré via la propriété conf_http_HTTPClient.connect.timeout.millis
, qui représente la valeur du délai avant expiration de la connexion en millisecondes dans le composant "Processeur de messages", à l'aide du jeton selon la syntaxe décrite dans
Comment configurer Edge.
Pour configurer le délai d'expiration de la connexion sur les processeurs de messages, procédez comme suit:
- Sur l'ordinateur de traitement de messages, ouvrez le fichier suivant dans un éditeur. S'il n'existe pas encore, créez-le.
/opt/apigee/customer/application/message-processor.properties
Par exemple, pour ouvrir le fichier à l'aide de
vi
, saisissez la commande suivante:vi /opt/apigee/customer/application/message-processor.properties
- Ajoutez une ligne au format suivant au fichier de propriétés, en remplaçant TIME_IN_MILLISECONDS par une valeur :
conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
Par exemple, pour définir le délai d'expiration de la connexion sur le processeur de messages à
5
secondes, ajoutez la ligne suivante:conf_http_HTTPClient.connect.timeout.millis=5000
- Enregistrez les modifications.
- Assurez-vous que le fichier de propriétés appartient à l'utilisateur
apigee
, comme indiqué ci-dessous :chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Redémarrez le processeur de messages comme indiqué ci-dessous :
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Si vous disposez de plusieurs processeurs de messages, répétez les étapes ci-dessus sur chacun d'eux.
Vérifier le délai avant expiration de la connexion sur les processeurs de messages
Cette section explique comment vérifier que le délai d'expiration de la connexion a bien été modifié sur les processeurs de messages.
Même si vous utilisez le jeton conf_http_HTTPClient.connect.timeout.millis
pour définir le délai d'expiration de la connexion sur le processeur de messages, vous devez vérifier si la propriété HTTPClient.connect.timeout.millis
réelle a été définie avec la nouvelle valeur.
- Sur la machine de traitement des messages, recherchez la propriété
HTTPTransport.connect.timeout.millis
dans le répertoire/opt/apigee/edge-message-processor/conf
et vérifiez si elle a été définie avec la nouvelle valeur, comme indiqué ci-dessous :grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
- Si la nouvelle valeur du délai avant expiration de la connexion est correctement définie sur le processeur de messages, la commande ci-dessus affiche la nouvelle valeur dans le fichier
http.properties
.L'exemple de résultat de la commande ci-dessus une fois que vous avez configuré le délai d'expiration de la connexion sur
5
secondes est le suivant:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
Dans l'exemple de sortie ci-dessus, notez que la propriété
HTTPClient.connect.timeout.millis
a été définie avec la nouvelle valeur5000
danshttp.properties
. Cela indique que le délai d'expiration de la connexion a bien été configuré sur5
secondes sur le processeur de messages. - Si vous voyez toujours l'ancienne valeur pour la propriété
HTTPClient.connect.timeout.millis
, vérifiez que vous avez correctement suivi toutes les étapes décrites dans la section Configurer le délai d'expiration de la connexion sur les processeurs de messages. Si vous avez manqué une étape, répétez-la correctement. - Si vous ne parvenez toujours pas à modifier le délai d'expiration de la connexion, contactez l'assistance Apigee Edge de Google Cloud.