Work Manager et le ralentissement work-manager-and-throttling

AEM Forms (et les versions antérieures) utilisaient les files d’attente JMS pour exécuter des opérations de manière asynchrone. Dans AEM Forms, les files d’attente JMS ont été remplacées par Work Manager. Ce document fournit des informations d’arrière-plan sur Work Manager et fournit des instructions sur la configuration des options de ralentissement de Work Manager.

À propos des opérations de longue durée (asynchrones) about-long-lived-asynchronous-operations

Dans AEM Forms, les opérations effectuées par les services peuvent être de courte durée (synchrones) ou de longue durée (asynchrones). Les opérations de courte durée se terminent de manière synchrone sur le même thread à partir duquel elles ont été appelées. Ces opérations attendent une réponse avant de continuer.

Les opérations de longue durée peuvent mobiliser plusieurs systèmes ou s’étendre au-delà de l’entreprise, notamment lorsqu’un client ou une cliente doit compléter et soumettre un formulaire de demande de prêt dans le cadre d’une solution regroupant de multiples tâches humaines et automatisées. Ces opérations doivent se poursuivre en attendant une réponse. Les opérations de longue durée exécutent leur travail sous-jacent de manière asynchrone, ce qui permet d’allouer des ressources à une autre tâche en attendant qu’elles se terminent. Contrairement à une opération de courte durée, Work Manager ne considère pas une opération de longue durée comme terminée lorsqu’elle est appelée. Un déclencheur externe, tel qu’un système demandant une autre opération au même service ou un utilisateur ou une utilisatrice envoyant un formulaire, doit se produire pour terminer l’opération.

À propos de Work Manager about-work-manager

AEM Forms (et les versions antérieures) utilisaient les files d’attente JMS pour exécuter des opérations de manière asynchrone. AEM Forms utilise Work Manager pour planifier et exécuter des opérations asynchrones via des threads gérés.

Les opérations asynchrones sont gérées comme suit :

  1. Work Manager reçoit une tâche à exécuter.
  2. Work Manager stocke la tâche dans un tableau de base de données et lui affecte un identifiant unique. L’enregistrement de base de données contient toutes les informations requises pour exécuter la tâche.
  3. Les threads Work Manager intègrent les tâches lorsque les threads sont libres. Avant d’intégrer les tâches, les threads peuvent vérifier si les services requis ont bien été lancés, si la taille du tas est suffisante pour intégrer la tâche suivante et si le nombre de cycles de processeur est suffisant pour traiter la tâche. Work Manager évalue également les attributs de la tâche (tels que sa priorité) lors de la planification de son exécution.

Les administrateurs et administratrices d’AEM Forms peuvent utiliser Health Monitor pour vérifier les statistiques de Work Manager, telles que le nombre de tâches dans la file d’attente et leur statut. Vous pouvez également utiliser Health Monitor pour suspendre, reprendre, réessayer ou supprimer des tâches. (Voir Affichage des statistiques relatives à Work Manager).

Configuration des options de ralentissement de Work Manager configuring-work-manager-throttling-options

Vous pouvez configurer le ralentissement pour Work Manager, afin que les tâches soient planifiées uniquement lorsque les ressources mémoire disponibles sont suffisantes. Vous configurez le ralentissement en définissant les options JVM suivantes dans votre serveur d’applications.

Propriété
Description
 adobe.work-manager.queue-refill-interval

Spécifie l’intervalle de temps, en millisecondes, que Work Manager utilise lors de la recherche de nouveaux éléments dans sa file d’attente.

La valeur de cette option est un nombre entier. La valeur par défaut est de 1000 millisecondes (1 seconde).

Si le volume d’appels asynchrones est faible, vous pouvez augmenter cette valeur. Par exemple, vous pouvez l’augmenter jusqu’à un nombre compris entre 2 000 et 5 000 (de 2 à 5 secondes).

Si le volume d’appels asynchrones est élevé, la valeur par défaut devrait être suffisante, mais vous pouvez aussi utiliser une valeur inférieure en cas de besoin. Une diminution trop importante de cette valeur (par exemple, en dessous de 50, ce qui entraîne une fréquence d’interrogation de 20 fois par seconde) provoque une surcharge importante du système.

 adobe.workmanager.debug-mode-enabled

Définissez cette option sur true pour activer le mode de débogage ou sur false pour le désactiver.

En mode débogage, les messages concernant les violations de politique de Work Manager et les actions de pause/reprise de Work Manager sont consignés. Définissez cette option sur True pendant le dépannage uniquement.

 adobe.workmanager.memory-control.enabled
Définissez cette option sur true pour activer le ralentissement en fonction des paramètres de contrôle de la mémoire décrits ci-dessous, ou sur false pour le désactiver.
 adobe.workmanager.memory-control.high-limit

Spécifie le pourcentage maximum de mémoire pouvant être utilisé avant que Work Manager ralentisse les travaux entrants.

La valeur par défaut de cette option est 95. Elle convient à la plupart des systèmes. Augmentez-la seulement lorsque votre système doit atteindre sa capacité maximale. Mais notez que plus vous augmentez cette valeur, plus le risque de problèmes de mémoire insuffisante augmente également.

Si vous exécutez AEM Forms dans un environnement en cluster, vous souhaiterez peut-être définir les paramètres de limite de contrôle de la mémoire différemment sur différents nœuds de ce cluster. Par exemple, vous pouvez avoir une limite supérieure plus basse sur les nœuds A et B, qui sont programmés dans votre équilibreur de charge pour le travail interactif. Et vous pouvez avoir des limites supérieures plus élevées sur les nœuds C et D, qui ne sont pas utilisés par l’équilibreur de charge, mais réservés au travail asynchrone.

 adobe.workmanager.memory-control.low-limit

Spécifie le pourcentage maximal de mémoire qui peut être utilisé avant que Work Manager n’arrête de ralentir les tâches entrantes.

La valeur par défaut de cette option est 20. Elle convient à la plupart des systèmes.

Dadobe.workmanager.allocate.max-batch-size

Spécifie la taille maximale du lot pour Work Manager. La taille du lot par défaut est 0.

Si le statut d’un processus dans Work Manager n’est pas mis à jour même une fois la tâche terminée, définissez la taille du lot sur 1.

Ajouter des options Java à JBoss

  1. Arrêtez le serveur d’applications JBoss.
  2. Ouvrez [appserver root]/bin/run.bat (Windows) ou run.sh (Linux ou UNIX) dans un éditeur et ajoutez toutes les options Java requises, au format -Dproperty=value.
  3. Redémarrez le serveur.

Ajouter des options Java à WebLogic

  1. Démarrez la console d’administration WebLogic en saisissant https://[host name]:[port]/console dans un navigateur web.

  2. Tapez le nom d’utilisateur et le mot de passe que vous avez créés pour le domaine du serveur WebLogic, sélectionnez Se connecter sous Centre des modifications, puis Verrouiller et modifier.

  3. Sous Structure du domaine, cliquez sur Environment > Serveurs et, dans le volet de droite, cliquez sur le nom du serveur géré.

  4. Dans l’écran suivant, cliquez sur les onglets Configuration > Server Start.

  5. Dans la zone Arguments, ajoutez les arguments dont vous avez besoin à la fin du contenu actuel. Par exemple, pour désactiver Health Monitor, ajoutez :

    -Dadobe.healthmonitor.enabled=false permet de désactiver Health Monitor.

  6. Cliquez sur Save, puis sur Activate Changes.

  7. Redémarrez le serveur géré WebLogic.

Ajouter des options Java à WebSphere

  1. Dans l’arborescence de navigation de la console d’administration WebSphere, cliquez sur Serveurs > Types de serveurs > Serveurs d’applications WebSphere.
  2. Dans le volet de droite, cliquez sur le nom du serveur.
  3. Sous Infrastructure du serveur, cliquez sur Java et Forms Workflow > Définition du processus.
  4. Sous Propriétés supplémentaires, cliquez sur Machine virtuelle Java (JVM).
  5. Dans la zone Arguments JVM génériques, saisissez les arguments dont vous avez besoin.
  6. Cliquez sur OK ou Appliquer, puis sur Enregistrer directement dans la configuration principale.
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2