<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
Ce document explique comment configurer le délai d'expiration des E/S sur les routeurs Apigee Edge.
Le délai avant expiration des E/S sur le routeur représente la durée pendant laquelle le routeur attend de recevoir une du processeur de messages, après avoir établi la connexion et envoyé la demande au processeur de messages. La valeur par défaut du délai avant expiration des E/S sur le routeur est de 57 secondes.
Le délai avant expiration des E/S pour les routeurs peut être augmenté ou réduit par rapport à la valeur par défaut de 57 secondes en fonction de vos besoins. Vous pouvez le configurer de différentes manières:
- Sur un hôte virtuel
- Sur le routeur
Les propriétés suivantes contrôlent le délai avant expiration des E/S sur les routeurs:
Nom de la propriété | Lieu | Description |
---|---|---|
proxy_read_timeout
|
Hôte virtuel |
Spécifie la durée maximale pendant laquelle le routeur attend de recevoir une réponse du le processeur de messages, une fois la connexion établie et envoyé la demande au Processeur de messages. En l'absence de réponse du processeur de messages dans ce délai, la Le délai d'attente du routeur est dépassé. Par défaut, cette propriété prend la valeur définie pour l'attribut
Si cette propriété est modifiée avec une nouvelle valeur de délai avant expiration pour un hôte virtuel spécifique, alors seuls les mandataires d'API utilisant cet hôte virtuel spécifique sont affectés. |
conf_load_balancing_load.balancing.driver.proxy.read.timeout
|
Routeur |
Spécifie la durée maximale pendant laquelle le routeur attend de recevoir une réponse du le processeur de messages, une fois la connexion établie et envoyé la demande au Processeur de messages. En l'absence de réponse du processeur de messages dans ce délai, la Le délai d'attente du routeur est dépassé. Cette propriété est utilisée pour tous les hôtes virtuels de ce routeur. La valeur par défaut de cette propriété est 57 secondes. Vous pouvez modifier cette propriété comme expliqué dans
Configurer le délai d'expiration des E/S sur les routeurs ci-dessous, ou vous pouvez écraser
cette valeur en définissant la propriété Vous pouvez définir l'intervalle de temps pour cette propriété sur une valeur autre que secondes à l'aide de la propriété la notation suivante: ms: milliseconds s: seconds (default) m: minutes h: hours d: days w: weeks M: months (length of 30 days) y: years (length of 365 days) |
conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout
|
Routeur |
Spécifie le temps total d'attente du routeur avant de recevoir une réponse de tous les messages Sous-traitants, après avoir établi la connexion et envoyé la requête à chaque Message Processeur. Ceci s'applique lorsque votre installation Edge dispose de plusieurs processeurs de messages et La nouvelle tentative est activée en cas d'erreurs. Sa valeur est l'une des suivantes:
Comme pour |
Avant de commencer
Avant de suivre les étapes décrites dans ce document, assurez-vous de bien comprendre les points suivants:
- Si vous ne connaissez pas les propriétés d'hôte virtuel, consultez <ph type="x-smartling-placeholder"></ph> Documentation de référence sur les propriétés d'hôte virtuel
- Si vous ne savez pas comment configurer des propriétés pour Edge sur Private Cloud, consultez Comment configurer de périphérie.
- Veillez à respecter les <ph type="x-smartling-placeholder"></ph> Bonnes pratiques pour configurer le délai avant expiration des E/S.
Configurer le délai avant expiration des E/S dans l'hôte virtuel
Cette section explique comment configurer le délai d'expiration des E/S dans l'hôte virtuel associé à un
votre organisation et votre environnement. Le délai avant expiration des E/S peut être configuré dans l'hôte virtuel via la
Propriété proxy_read_timeout
, qui représente la valeur du délai d'attente d'E/S en secondes.
Vous pouvez configurer l'hôte virtuel en utilisant l'une des méthodes suivantes:
- Interface utilisateur périphérique
- API Edge
Interface utilisateur périphérique
<ph type="x-smartling-placeholder">Pour configurer l'hôte virtuel à l'aide de l'interface utilisateur Edge, procédez comme suit:
- Connectez-vous à l'interface utilisateur Edge.
- Accédez à Admin > Hôtes virtuels
- Sélectionnez l'environnement spécifique dans lequel vous souhaitez effectuer cette modification.
- Sélectionnez l'hôte virtuel spécifique pour lequel vous souhaitez configurer le nouveau Valeur du délai d'expiration des E/S.
- Sous Properties (Propriétés), mettez à jour la valeur Proxy Read Timeout (Délai de lecture du proxy) en secondes.
Par exemple, si vous souhaitez définir le délai avant expiration sur 120 secondes, saisissez 120, comme indiqué dans les comme illustré ci-dessous:
- Enregistrez la modification.
API Edge
Pour configurer l'hôte virtuel à l'aide de l'API Edge, procédez comme suit:
- Obtenez la configuration actuelle de l'hôte virtuel à l'aide de la méthode
<ph type="x-smartling-placeholder"></ph>
Obtenez l'API hôte virtuel comme indiqué ci-dessous:
Utilisateur du cloud public
curl -v -X GET https//api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Utilisateur Private Cloud
curl -v -X GET http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Où :
{organization-name} est le nom de l'organisation.
{environment-name} est le nom de l'environnement.
{virtualhost-name} est le nom de l'hôte virtuel.
Exemple de configuration d'hôte virtuel
{ "hostAliases": [ "api.myCompany,com" ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
- Ajouter la propriété
proxy_read_timeout
à la configuration d'hôte virtuel existante Charge utile JSON sousproperties
avec la valeur en secondes.Par exemple, pour définir le délai d'expiration des E/S sur 120 secondes, ajoutez
properties
. comme indiqué ci-dessous:Exemple de configuration d'hôte virtuel mise à jour
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "proxy_read_timeout", "value": "120" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
- Enregistrez la configuration d'hôte virtuel mise à jour dans un fichier. Par exemple :
virtualhost-payload.json
- Mettez à jour la configuration
virtualhost
avec la modification à l'aide de la méthode <ph type="x-smartling-placeholder"></ph> Mettez à jour une API hôte virtuel comme suit:Utilisateur du cloud public
curl -v -X POST Content-Type: application/json https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
Utilisateur Private Cloud
curl -v -X POST Content-Type: application/json http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
Où :
{organization-name} est le nom de l'organisation.
{environment-name} est le nom de l'environnement.
{virtualhost-name} est le nom de l'hôte virtuel.
Vérifier le délai d'expiration des E/S sur les hôtes virtuels
Cette section explique comment vérifier que le délai d'expiration des E/S a bien été modifié sur la à l'aide de l'API Edge.
- Exécutez la
<ph type="x-smartling-placeholder"></ph>
Obtenez l'API d'hôte virtuel pour obtenir la configuration
virtualhost
, comme indiqué ci-dessous:Utilisateur du cloud public
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Utilisateur Private Cloud
curl -v -X GET http://<management server-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
Où :
{organization-name} est le nom de l'organisation.
{environment-name} est le nom de l'environnement.
{virtualhost-name} est le nom de l'hôte virtuel.
- Vérifiez que la propriété
proxy_read_timeout
a été définie sur la nouvelle valeur.Exemple de configuration d'hôte virtuel mise à jour
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "proxy_read_timeout", "value": "120" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }
Dans l'exemple ci-dessus, notez que
proxy_read_timeout
a été défini avec la nouvelle valeur de 120 secondes. - Si l'ancienne valeur s'affiche toujours pour
proxy_read_timeout,
, vérifiez que vous avez suivi correctement toutes les étapes décrites dans la section Configurer le délai d'expiration des E/S dans l'hôte virtuel. Si vous avez manqué une étape, répétez toutes les étapes correctement. - Si vous ne parvenez toujours pas à modifier le délai avant expiration des E/S, contactez l'assistance Apigee Edge.
Configurer le délai d'expiration des E/S sur les routeurs
Cette section explique comment configurer le délai d'expiration des E/S sur les routeurs. Le délai avant expiration des E/S peut être
configuré via la propriété Routeur
conf_load_balancing_load.balancing.driver.proxy.read.timeout
, qui représente
la valeur du délai avant expiration des E/S, en secondes.
Pour configurer le délai d'expiration des E/S sur les routeurs, procédez comme suit:
- Sur la machine du routeur, ouvrez le fichier suivant dans un éditeur. S'il n'existe pas encore, créez-le.
/opt/apigee/customer/application/router.properties
Par exemple, pour ouvrir le fichier avec
vi
, saisissez la commande suivante:vi /opt/apigee/customer/application/router.properties
- Ajoutez une ligne au format suivant au fichier
properties
, en remplaçant une pourtime_in_seconds
: - Enregistrez les modifications.
- Assurez-vous que ce fichier de propriétés appartient à l'utilisateur
apigee
, comme indiqué ci-dessous:chown apigee:apigee /opt/apigee/customer/application/router.properties
- Redémarrez le routeur comme indiqué ci-dessous:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Si vous avez plusieurs routeurs, répétez les étapes ci-dessus sur chacun d'eux.
conf_load_balancing_load.balancing.driver.proxy.read.timeout=time_in_seconds
Par exemple, pour faire passer le délai d'E/S du routeur à 120 secondes, ajoutez la ligne suivante:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
Vous pouvez également modifier le délai avant expiration des E/S en quelques minutes. Par exemple, pour remplacer le délai avant expiration par deux minutes, ajoutez la ligne suivante:
conf_load_balancing_load.balancing.driver.proxy.read.timeout=2m
Vérifier le délai des E/S sur les routeurs
Cette section explique comment vérifier que le délai d'expiration des E/S a bien été modifié sur la les routeurs Cloud Router.
Même si vous utilisez le jeton
conf_load_balancing_load.balancing.driver.proxy.read.timeout
pour définir le délai avant expiration des E/S
sur le routeur, vérifiez si la propriété réelle proxy_read_timeout
a
défini avec la nouvelle valeur.
- Recherchez la propriété
proxy_read_timeout
dans/opt/nginx/conf.d
et vérifiez s'il a été défini avec le nouvelle valeur comme suit:grep -ri "proxy_read_timeout" /opt/nginx/conf.d
- Si la nouvelle valeur du délai d'expiration des E/S est correctement définie sur le routeur, la commande ci-dessus
affiche la nouvelle valeur dans tous les fichiers de configuration de l'hôte virtuel.
Voici l'exemple de résultat de la commande
grep
ci-dessus lorsque la Le délai avant expiration des E/S est de 120 secondes:/opt/nginx/conf.d/0-default.conf:proxy_read_timeout 120; /opt/nginx/conf.d/0-edge-health.conf:proxy_read_timeout 1s;
Dans l'exemple de résultat ci-dessus, notez que la propriété
<ph type="x-smartling-placeholder">proxy_read_timeout
a été définie avec la nouvelle valeur 120 dans0-default.conf
, qui correspond au de configuration Terraform pour l'hôte virtuel par défaut. Cela indique que le délai avant expiration des E/S est correctement configuré sur 120 secondes sur le routeur. - Si l'ancienne valeur de la propriété
proxy_read_timeout
s'affiche toujours, alors vérifiez que vous avez suivi toutes les étapes décrites dans Configurez correctement le délai d'expiration des E/S sur les routeurs. Si vous avez avez manqué une étape, répétez toutes les étapes correctement. - Si vous ne parvenez toujours pas à modifier le délai avant expiration des E/S, contactez l'assistance Apigee Edge.
Et ensuite ?
Découvrez comment configurer le délai d'expiration des E/S dans le processeur de messages.