Configurer le routeur pour relancer les connexions à un processeur de messages

Edge for Private Cloud v. 4.16.09

Le routeur effectue une vérification de l'état du processeur de messages toutes les cinq secondes pour déterminer s'il peut traiter les requêtes. Si un processeur de messages tombe en panne, le routeur transfère automatiquement les requêtes à un autre processeur de messages.

Vous pouvez configurer la manière dont le routeur réagit en cas de panne du processeur de messages en définissant la propriété conf_load_balancer_load.balancer.driver.nginx.server.retry sur le routeur. Cette propriété accepte un ensemble de valeurs délimitées par des espaces, qui peuvent inclure les éléments suivants:

  • Désactivé: désactive la nouvelle tentative. Le routeur renvoie un code d'échec en cas de requête.
  • http_599: (par défaut) si le routeur reçoit une réponse HTTP 599 de la part du processeur de messages, il transfère la requête au processeur de messages suivant.

    Le protocole HTTP 599 est un code de réponse spécial généré par un processeur de messages lors de son arrêt. Le processeur de messages tente de traiter toutes les requêtes existantes, mais pour toute nouvelle requête, il répond par HTTP 599 pour signaler au routeur de relancer la requête lors du prochain processeur de messages.
  • error: si une erreur s'est produite lors de l'établissement d'une connexion au processeur de messages, en lui transmettant une requête ou en lisant l'en-tête de réponse, le routeur transmet la requête au processeur de messages suivant.
  • timeout: si un délai avant expiration se produit lors de l'établissement d'une connexion avec le processeur de messages, de la transmission d'une requête ou de la lecture de l'en-tête de réponse à partir de celui-ci, le routeur transfère la requête au processeur de messages suivant.
  • invalid_header: si le processeur de messages a renvoyé une réponse vide ou non valide, le routeur transfère la requête au processeur de messages suivant.
  • http_XXX: si le processeur de messages a renvoyé une réponse avec le code HTTP XXX, le routeur transfère la requête au processeur de messages suivant.

Pour configurer le routeur:

  1. Modifiez le fichier /<inst_root>/apigee/customer/application/router.properties (s'il n'existe pas, créez-le).
  2. Ajoutez la propriété conf_load_équilibrage_load.balancer.driver.nginx.server.retry comme indiqué ci-dessous:
    erreur conf_load_balancer_load.driver.nginx.server.retry=http_599
  3. Redémarrez le routeur:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service Edge-router restart