Vous consultez actuellement l'aide de la version:

Présentation

La gestion de fichiers volumineux et l’exécution des processus dans Adobe Experience Manager (AEM) Assets peuvent utiliser des ressources de processeur, de mémoire et d’E/S considérables. En particulier, la taille des ressources, les processus, le nombre d’utilisateurs et la fréquence d’assimilation des ressources peuvent affecter les performances globales du système. Les opérations les plus gourmandes en ressources incluent les processus d’assimilation et de réplication des ressources d’AEM. L’utilisation intensive de ces processus sur une seule instance de création AEM peut avoir un impact négatif sur l’efficacité de la création.

Le déchargement de ces tâches vers des instances de programme de travail dédiées peut réduire les surcharges du processeur, de la mémoire et de l’E/S. En général, l’idée qui sous-tend le déchargement consiste à distribuer les tâches qui utilisent des ressources intensives de processeur, mémoire ou E/S vers des instances de programme de travail dédiées. Les sections suivantes incluent les cas d’utilisation recommandés pour le déchargement des ressources. 

Déchargement des ressources AEM

AEM Assets met en œuvre une extension de processus spécifique aux ressources natives pour le déchargement. AEM Assets s’appuie sur l’extension de processus générique fournie par la structure de déchargement, mais inclut, dans la mise en œuvre, des fonctionnalités supplémentaires spécifiques aux ressources. L’objectif du déchargement des ressources consiste à exécuter efficacement le processus Ressources de mise à jour de gestion des actifs numériques sur une ressource chargée. Le déchargement des ressources permet de mieux contrôler les processus d’assimilation.

Composants du déchargement des ressources AEM

Le diagramme suivant illustre les principaux composants du processus de déchargement des ressources :

chlimage_1

Processus Déchargement des ressources de mise à jour de gestion des actifs numériques

Le processus Déchargement des ressources de mise à jour de gestion des actifs numériques s’exécute sur le maître (auteur) dans lequel l’utilisateur charge les ressources. Ce processus est déclenché par un lanceur de processus standard. Au lieu de traiter la ressource chargée, ce processus de déchargement crée une nouvelle tâche, en utilisant la rubrique com/adobe/granite/workflow/offloading. Le processus de déchargement ajoute le nom du processus cible, le processus Ressources de mise à jour de gestion des actifs numériques dans ce cas, ainsi que le chemin de la ressource permettant d’accéder à la charge utile de la tâche. Après la création de la tâche de déchargement, le processus de déchargement sur le maître ne démarre qu’une fois que la tâche de déchargement a été exécutée.

Gestionnaire des tâches

Le gestionnaire des tâches distribue les nouvelles tâches aux instances de programme de travail. Lors de la conception du mécanisme de distribution, il est important de prendre en compte l’activation de rubrique. Les tâches ne peuvent être affectées qu’à des instances dont la rubrique de la tâche est activée. Désactivez la rubrique com/adobe/granite/workflow/offloading sur le maître et activez-la sur le programme de travail afin de garantir que la tâche est affectée à ce dernier.

Déchargement AEM

Le structure de déchargement identifie les tâches de déchargement des processus affectées aux instances de programme de travail et utilise la réplication pour les transporter physiquement, y compris leur charge utile (par exemple, les images à intégrer), vers les programmes de travail.

Consommateur de tâche du déchargement des processus

Une fois qu’une tâche est écrite dans le programme de travail, le gestionnaire des tâches appelle le consommateur de tâche responsable de la rubrique com/adobe/granite/workflow/offloading. Le consommateur de tâche exécute alors le processus Ressources de mise à jour de gestion des actifs numériques sur la ressource.

Topologie Sling

La topologie Sling regroupe les instances AEM et leur permet de se connaître mutuellement, indépendamment de la persistance sous-jacente. Cette caractéristique de la topologie Sling permet de créer des topologies pour des scénarios sans cluster, en cluster et mixtes. Une instance peut présenter des propriétés à l’ensemble de la topologie. La structure fournit des rappels permettant d’écouter les modifications de la topologie (instances et propriétés). La topologie Sling fournit la base des tâches distribuées Sling.

Tâches distribuées Sling

Les tâches distribuées Sling facilitent la distribution des tâches parmi un ensemble d’instances membres de la topologie. Les tâches Sling reposent sur le concept de fonctionnalités. Une tâche est définie par sa rubrique de tâche. Pour exécuter une tâche, une instance doit fournir un consommateur de tâche pour une rubrique de tâche spécifique. La rubrique de tâche est le pilote principal correspondant au mécanisme de distribution.

Les tâches sont uniquement distribuées aux instances qui fournissent un consommateur de tâche pour la rubrique. En activant ou désactivant les consommateurs de tâche sur une instance, vous pouvez définir ses fonctionnalités et influencer le mécanisme de distribution. Les consommateurs de tâche disponibles d’une instance sont diffusés à l’ensemble de la topologie.

Dans ce contexte, le terme « distribution » signifie l’affectation d’une tâche à une instance spécifique qui fournit un consommateur de tâche. L’affectation à une instance est enregistrée dans le référentiel. En d’autres termes, les tâches distribuées Sling peuvent être affectées à n’importe quelle instance de la topologie par défaut. Cependant, les autres tâches ne peuvent être exécutées que par des instances partageant le même référentiel. Cela signifie que ces tâches peuvent uniquement être exécutées par les instances faisant partie du même cluster. Les tâches affectées à des instances d’un autre cluster ne sont pas exécutées.

Structure de déchargement Granite

La structure de déchargement Granite complète la distribution des tâches Sling afin d’exécuter les tâches affectées aux instances qui ne sont pas en cluster. Elle n’effectue aucune distribution (affectation d’instances). Toutefois, elle identifie les tâches Sling qui ont été distribuées à des instances sans cluster et les transporte vers l’instance cible pour exécution. Actuellement, le déchargement utilise la réplication pour effectuer ce transport de tâches. Pour exécuter une tâche, le déchargement définit l’entrée et la sortie, qui sont ensuite combinées avec la tâche pour créer la charge utile de cette dernière.

Les tâches Sling distribuées fournissent la structure des tâches et des distributions. Le déchargement Granit prend uniquement en charge le transport dans le cas particulier où les tâches sont distribuées à des instances sans cluster.

En plus du transport, la structure de déchargement fournit une extension du moteur de processus. Cette extension permet à la structure de créer des tâches distribuées dans le cadre d’un processus et d’attendre leur achèvement pour que le processus progresse. L’extension est mise en œuvre à l’aide de l’API d’étape externe des processus à partir du moteur de processus. L’une des extensions facilite la distribution générique des processus. La distribution des étapes d’un processus unique n’est pas prise en charge. 

La structure de déchargement fournit également une interface utilisateur (IU) permettant de visualiser et de contrôler l’activation des rubriques de tâche sur l’ensemble de la topologie. L’interface utilisateur permet de configurer facilement l’activation des rubriques des tâches Sling distribuées. Vous pouvez également configurer le déchargement sans l’interface utilisateur.

Conseils généraux et meilleures pratiques pour le déchargement des ressources

Chaque mise en œuvre est unique et, en tant que telle, il n’y a pas de configuration de déchargement unique. Les sections suivantes présentent des conseils et les meilleures pratiques concernant le déchargement de l’assimilation des ressources.

Le déchargement des ressources entraîne également des surcharges du système, notamment des surcharges opérationnelles. Si vous rencontrez des problèmes relatifs à la charge d’assimilation des ressources, Adobe recommande d’améliorer d’abord la configuration sans le déchargement. Pensez aux options suivantes avant de passer au déchargement des ressources :

  • Mettez à niveau le matériel
  • Optimisez les processus
  • Utilisez des processus transitoires
  • Limitez le nombre de cœurs utilisés pour les processus 

Si vous estimez que le déchargement des ressources est une approche adaptée à vos besoins, Adobe fournit les conseils suivants :

  • Une mise en œuvre basée sur TarMK est recommandée
  • Le déchargement des ressources basé sur TarMK n’est pas conçu pour la mise à l’échelle horizontale étendue
  • Assurez-vous que les performances du réseau entre l’auteur et les programmes de travail sont satisfaisantes

Déploiement recommandé du déchargement des ressources

Avec AEM et Oak, il existe plusieurs scénarios de déploiement possibles. Pour le déchargement des ressources, un déploiement basé sur TarMK avec une banque de données partagée est recommandé. Le diagramme ci-dessous décrit le déploiement recommandé :

chlimage_1

Pour plus d’informations sur la configuration d’une banque de données, voir Configuration des magasins de nœuds et des banques de données dans AEM.

Désactivation de la gestion automatique des agents

Adobe recommande de désactiver la gestion automatique des agents car elle ne prend pas en charge la réplication sans fichier binaire et peut entraîner une confusion lors de la configuration d’une nouvelle topologie de déchargement. De plus, elle ne prend pas en charge automatiquement le flux de réplication vers l’avant requis par la réplication sans fichier binaire.

  1. Ouvrez Configuration Manager à partir de l’URL http://localhost:4502/system/console/configMgr

  2. Ouvrez la configuration pour OffloadingAgentManager (http://localhost:4502/system/console/configMgr/com.adobe.granite.offloading.impl.transporter.OffloadingAgentManager).

  3. Désactivez la gestion automatique des agents.

Utilisation de la réplication vers l’avant

Par défaut, le transport du déchargement utilise la réplication inverse pour transférer les ressources déchargées du programme de travail vers le maître. Les agents de réplication inverse ne prennent pas en charge la réplication sans fichier binaire. Vous devez configurer le déchargement afin d’utiliser la réplication vers l’avant pour transférer les ressources déchargées du programme de travail vers le maître.
  1. Si vous migrez à partir de la configuration par défaut à l’aide de la réplication inverse, désactivez ou supprimez tous les agents nommés « offloading_outbox » et « offloading_reverse_* » sur le maître et le programme de travail, où * représente l’ID Sling de l’instance cible.

  2. Sur chaque programme de travail, créez le nouvel agent de réplication vers l’avant pointant vers le maître. La procédure est identique à la création d’agents vers l’avant du maître vers le programme de travail. Voir Création d’agents de réplication pour le déchargement pour obtenir des instructions sur la configuration des agents de réplication de déchargement.

  3. Ouvrez la configuration pour OffloadingDefaultTransporter (http://localhost:4502/system/console/configMgr/com.adobe.granite.offloading.impl.transporter.OffloadingDefaultTransporter).

  4. Modifiez la valeur de la propriété default.transport.agent-to-master.prefix de offloading_reverse à offloading.

Utilisation d’une banque de données partagée et d’une réplication sans fichier binaire entre l’auteur et les programmes de travail

Il est recommandé d’utiliser la réplication sans fichier binaire afin de réduire la surcharge de transport pour le déchargement des ressources. Pour savoir comment configurer la réplication sans fichier binaire pour une banque de données partagée, voir Configuration des magasins de nœuds et des banques de données dans AEM. La procédure n’est pas différente pour le déchargement des ressources, mais elle implique d’autres agents de réplication. Comme la réplication sans fichier binaire ne fonctionne qu’avec les agents de réplication vers l’avant, vous devez également utiliser la réplication vers l’avant pour tous les agents de déchargement.

Désactivation des modules de transport

Par défaut, le déchargement crée un module de contenu comportant la tâche de déchargement et la charge utile de la tâche (la ressource d’origine) et transporte ce module de déchargement unique à l’aide d’une seule demande de réplication. La création de ces modules de déchargement est contre-productive lors de l’utilisation de la réplication sans fichier binaire, car les fichiers binaires sont à nouveau sérialisés dans le module lors de la création de ce dernier. L’utilisation de ces modules de transport peut être désactivée, ce qui entraîne le transport de la tâche de déchargement et de la charge utile dans plusieurs demandes de réplication, une pour chaque entrée de charge utile. De cette façon, vous pouvez bénéficier de la réplication sans fichier binaire.

  1. Ouvrez la configuration du composant OffloadingDefaultTransporter à l’adresse http://localhost:4502/system/console/configMgr/com.adobe.granite.offloading.impl.transporter.OffloadingDefaultTransporter

  2. Désactivez la propriété Module de réplication (default.transport.contentpackage).

Désactivation du transport du modèle de processus

Par défaut, le processus de déchargement Déchargement des ressources de mise à jour de gestion des actifs numériques ajoute le modèle de processus pour faire appel au programme de travail de la charge utile de la tâche. Comme ce processus suit le modèle Ressources de mise à jour de gestion des actifs numériques prêt à l’emploi par défaut, cette charge utile supplémentaire peut être supprimée.

Si le modèle de processus est désactivé à partir de la charge utile de la tâche, assurez-vous de distribuer les modifications au modèle de processus référencé à l’aide d’autres outils, tels que le gestionnaire de modules.

Pour désactiver le transport du modèle de processus, modifiez le processus Déchargement des ressources de mise à jour de gestion des actifs numériques.

  1. Ouvrez la console de processus depuis http://localhost:4502/libs/cq/workflow/content/console.html.

  2. Ouvrez l’onglet Modèles.

  3. Ouvrez le modèle de processus Déchargement des ressources de mise à jour de gestion des actifs numériques.

  4. Ouvrez les propriétés de l’étape Déchargement du processus de gestion des actifs numériques.

  5. Ouvrez l’onglet Arguments, puis désactivez les options Ajouter un modèle à l’entrée et Ajouter le modèle à la sortie.

  6. Enregistrez les modifications apportées au modèle.

Optimisation de la fréquence d’interrogation

Le déchargement des processus est mis en œuvre à l’aide d’un processus externe sur le maître, qui interroge l’achèvement du processus déchargé sur le programme de travail. La fréquence d’interrogation par défaut pour les processus externes est de cinq secondes. Adobe recommande d’augmenter la fréquence d’interrogation de l’étape de déchargement des ressources à au moins 15 secondes afin de réduire la surcharge de déchargement sur le maître.

  1. Ouvrez la console de processus depuis http://localhost:4502/libs/cq/workflow/content/console.html.

  2. Ouvrez l’onglet Modèles.

  3. Ouvrez le modèle de processus Déchargement des ressources de mise à jour de gestion des actifs numériques.

  4. Ouvrez les propriétés de l’étape Déchargement du processus de gestion des actifs numériques.

  5. Ouvrez l’onglet Communs, puis ajustez la valeur de la propriété Période.

  6. Enregistrez les modifications apportées au modèle.

Autres ressources

Ce document aborde le déchargement des ressources. Documentation supplémentaire sur le déchargement :

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne