Configuration du délai d'inactivité de l'application pour les processeurs de messages

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

<ph type="x-smartling-placeholder">

Ce document explique comment configurer le délai avant expiration du message keep-alive pour Apigee Edge Processeurs de messages.

Le délai avant expiration du message keep-alive sur le processeur de messages permet à une seule connexion TCP d’envoyer et recevoir plusieurs requêtes/réponses HTTP depuis/vers le serveur backend, au lieu d'ouvrir un nouveau pour chaque paire requête/réponse.

La valeur par défaut de la propriété du délai d'inactivité du message sur le processeur de messages est 60 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 avant expiration du message keep-alive pour les processeurs de messages peut être augmenté ou réduit par rapport à la valeur par défaut de 60 secondes en fonction de vos besoins. Vous pouvez le configurer de différentes manières:

  • Dans le proxy d'API <ph type="x-smartling-placeholder">
      </ph>
    • Sur 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 avant expiration du message keep-alive sur les processeurs de messages:

Nom de propriété Lieu Description
keepalive.timeout.millis Proxy d'API: <ph type="x-smartling-placeholder">
    </ph>
  • Point de terminaison cible
  • ServiceCallout règle

Il s'agit de la durée maximale d'inactivité pendant laquelle le processeur de messages autorise un seul pour envoyer et recevoir plusieurs requêtes/réponses HTTP, au lieu d'ouvrir une nouvelle pour chaque paire requête/réponse.

Par défaut, cette propriété prend la valeur définie pour l'attribut Propriété HTTPClient.keepalive.timeout.millis sur le processeur de messages, où la valeur par défaut est de 60 secondes.

Si cette propriété est modifiée avec une nouvelle valeur de délai avant expiration pour le serveur cible utilisé dans la le point de terminaison cible ou la règle ServiceCallout dans le proxy d'API spécifique, puis le temps de conservation uniquement pour ce serveur cible spécifique est affecté.

HTTPClient.keepalive.timeout.millis Processeur de messages

Il s'agit de la durée maximale d'inactivité pendant laquelle le processeur de messages autorise un seul pour envoyer et recevoir plusieurs requêtes/réponses HTTP, au lieu d'ouvrir un pour chaque paire requête/réponse.

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 60 secondes.

Vous pouvez modifier cette propriété comme expliqué dans Configurer le délai avant expiration du message keep-alive sur les processeurs de messages ci-dessous, ou vous pouvez écraser cette valeur en définissant la propriété keepalive.timeout.millis au niveau du proxy d'API.

Avant de commencer

Avant de suivre les étapes décrites dans ce document, assurez-vous de bien comprendre les points suivants:

Configurer le délai avant expiration du message keep-alive dans le proxy d'API

Le délai avant expiration du message keep-alive peut être configuré dans le proxy d'API aux endroits suivants:

  • Point de terminaison cible
  • ServiceCallout règle

Configuration du délai avant expiration du message keep-alive dans le point de terminaison cible du proxy API

Cette section explique comment configurer le délai avant expiration du message keep-alive sur le point de terminaison cible de votre proxy d'API. Le délai avant expiration du message keep-alive peut être configuré via la propriété keepalive.timeout.millis, qui représente la valeur du délai avant expiration du message keep-alive dans millisecondes.

<ph type="x-smartling-placeholder">
  1. Dans l'interface utilisateur Edge, sélectionnez le proxy d'API spécifique dans lequel vous souhaitez configurer le nouveau la valeur du délai avant expiration du message keep-alive.
  2. Sélectionnez le point de terminaison cible spécifique que vous souhaitez modifier.
  3. Ajoutez la propriété keepalive.timeout.millis avec une valeur appropriée sous la propriété Élément <HTTPTargetConnection> dans la configuration TargetEndpoint.

    Par exemple, pour définir le délai avant expiration du message keep-alive sur 30 secondes, ajoutez la clé-valeur bloc de code suivant:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    La propriété keepalive.timeout.millis étant exprimée en millisecondes, la valeur de 30 secondes correspond à 30000.

    Les exemples suivants montrent comment configurer le délai avant expiration du message keep-alive sur le point de terminaison cible la configuration de votre proxy d'API:

    Exemple de configuration de point de terminaison cible utilisant une URL pour le serveur backend

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>
    

    Exemple de configuration de point de terminaison cible avec un serveur cible

    <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>
    
    <ph type="x-smartling-placeholder">
  4. Enregistrez les modifications apportées à votre proxy d'API.

Configurer le délai avant expiration du message keep-alive dans la règle ServiceAccroche du proxy d'API

Cette section explique comment configurer le délai avant expiration du message keep-alive dans le Règle ServiceCallout de votre proxy d'API. Le délai avant expiration du message keep-alive peut être configuré via la propriété the keepalive.timeout.millis, qui représente la valeur du délai avant expiration du message keep-alive en millisecondes.

<ph type="x-smartling-placeholder"> <ph type="x-smartling-placeholder">

Pour configurer le délai avant expiration du message keep-alive dans la règle ServiceCallout à l'aide de Propriété keepalive.timeout.millis:

  1. Dans l'interface utilisateur Edge, sélectionnez le proxy d'API spécifique dans lequel vous souhaitez configurer le nouveau Valeur du délai avant expiration "keepalive" pour la règle ServiceCallout
  2. Sélectionnez la règle ServiceCallout spécifique que vous souhaitez modifier.
  3. Ajoutez la propriété keepalive.timeout.millis avec une valeur appropriée sous la propriété Élément <HTTPTargetConnection> dans la configuration TargetEndpoint.

    Par exemple, pour définir le délai avant expiration du message keep-alive sur 30 secondes, ajoutez la valeur bloc de code suivant:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>
    

    La propriété keepalive.timeout.millis étant exprimée en millisecondes, la valeur de 30 secondes correspond à 30000.

    Les exemples suivants montrent comment configurer le délai avant expiration du message keep-alive dans le Règle ServiceCallout de votre proxy d'API:

    Exemple de configuration de la règle ServiceAccroche avec une URL pour le serveur backend

    <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>
    

    Exemple de configuration d'une règle ServiceAccroche 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="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
    <ph type="x-smartling-placeholder">
  4. Enregistrez les modifications apportées à votre proxy d'API.

Configurer le délai avant expiration du message keep-alive sur les processeurs de messages

Cette section explique comment configurer le délai avant expiration du message keep-alive sur les processeurs de messages. La Le délai avant expiration du message keep-alive peut être configuré via la propriété HTTPClient.keepalive.timeout.millis, qui représente le délai avant expiration du message keep-alive en millisecondes sur le composant de processeur de messages. Puisque cet établissement est commenté le processeur de messages, vous devez utiliser la syntaxe spéciale conf/http.properties+HTTPClient.keepalive.timeout.millis, comme décrit dans la section <ph type="x-smartling-placeholder"></ph> Définir un jeton actuellement commenté dans Comment configurer Edge.

<ph type="x-smartling-placeholder">

Pour configurer le délai avant expiration du message keep-alive sur les processeurs de messages, procédez comme suit:

  1. Sur le processeur 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 en utilisant vi, saisissez la commande suivante:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Ajoutez une ligne au format suivant au fichier de propriétés, en remplaçant une valeur par TIME_IN_MILLISECONDS:
    conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
    

    Par exemple, pour modifier le délai d'expiration du message keep-alive sur le processeur de messages en 30 secondes, ajoutez la ligne suivante:

    conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
    
  3. Enregistrez les modifications.
  4. 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
    
  5. Redémarrez le processeur de messages comme indiqué ci-dessous:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Si vous disposez de plusieurs processeurs de messages, répétez les étapes ci-dessus sur tous les Processeurs de messages.

Vérifier le délai avant expiration du message keep-alive sur les processeurs de messages

Cette section explique comment vérifier que le délai avant expiration du message keep-alive a bien été modifié. sur les processeurs de messages.

Même si vous utilisez la syntaxe spéciale conf/http.properties+HTTPClient.keepalive.timeout.millis pour activer le message keep-alive sur le processeur de messages, vous devez vérifier si la propriété réelle HTTPClient.keepalive.timeout.millis a été défini avec la nouvelle valeur.

  1. Sur le processeur de messages, recherchez la propriété HTTPClient.keepalive.timeout.millis dans la /opt/apigee/edge-message-processor/conf et vérifiez s'il contient a été définie avec la nouvelle valeur, comme indiqué ci-dessous:
    grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. Si la nouvelle valeur d’expiration du message keep-alive est correctement définie sur le processeur de messages, alors La commande ci-dessus affiche la nouvelle valeur dans le fichier http.properties.

    Exemple de résultat de la commande ci-dessus après la configuration du délai avant expiration du message keep-alive à 30 secondes est le suivant:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
    

    Dans l'exemple de résultat ci-dessus, notez que la propriété HTTPClient.keepalive.timeout.millis a été défini avec la nouvelle valeur 30000 dans http.properties. Cela indique que le message keep-alive délai avant expiration a bien été configuré sur 30 secondes sur le processeur de messages.

  3. Si l'ancienne valeur de la propriété s'affiche toujours HTTPClient.keepalive.timeout.millis, puis vérifiez que vous avez bien suivi tous les les étapes décrites dans Configurer le délai avant expiration du message keep-alive sur les processeurs de messages correctement. Si vous avez manqué une étape, répétez toutes les étapes correctement.
  4. Si vous ne parvenez toujours pas à modifier le délai avant expiration du message keep-alive, contactez Assistance Apigee Edge de Google Cloud