Résolution des pannes de production AEM provoquées par l’épuisement des threads suite à des requêtes de ressources volumineuses
Cet article explique comment résoudre une panne de production dans Adobe Experience Manager (AEM) due à un nombre excessif de requêtes simultanées pour une ressource vidéo volumineuse, ce qui peut épuiser les threads de traitement des requêtes et perturber le service.
Description description
Environnement
Adobe Experience Manager (toutes versions)
Problème/Symptômes
Dans les environnements de production AEM, la diffusion de ressources vidéo volumineuses à de nombreux utilisateurs et utilisatrices simultanés peut entraîner l’épuisement du thread si la ressource n’est pas mise en cache au niveau de la couche Dispatcher. Si une purge du cache supprime la ressource volumineuse du cache alors que le trafic anormal ou de volume élevé persiste, toutes les requêtes pour la ressource sont transférées au service de publication AEM. Cela peut rapidement consommer tous les threads de traitement des requêtes disponibles, entraînant une dégradation du service ou une panne complète.
- Tous les utilisateurs ne peuvent pas accéder à l’environnement de production (auteur, publication ou domaine).
- La dégradation du service se produit après un vidage du cache de Dispatcher.
- Une consommation élevée de threads se produit sur l’instance de publication AEM.
Cause
Une purge du cache a supprimé une grande ressource vidéo du cache de Dispatcher alors que le trafic anormal ou de volume élevé persistait. Toutes les demandes de ressources étaient alors transférées vers l’instance de publication AEM, ce qui épuisait les threads de traitement des demandes et provoquait une panne de production.
Résolution resolution
Pour résoudre ce problème, procédez comme suit :
- Récupérez la ressource vidéo volumineuse affectée à partir de l’auteur AEM et mettez-la manuellement en cache au niveau de la couche Apache/Dispatcher.
- Appliquez un indicateur non modifiable à la ressource mise en cache dans Dispatcher pour l’empêcher d’être supprimée par les opérations de vidage de cache suivantes. Consultez votre configuration Dispatcher pour plus d’informations sur la définition de règles de cache non modifiables.
- Surveillez l’environnement pour vérifier que les requêtes de la ressource vidéo sont traitées par Apache/Dispatcher et ne sont pas transférées au service de publication AEM. Recherchez dans les journaux Dispatcher les accès au cache et les échecs liés à la ressource.
- Recherchez la source et la nature du modèle de requête anormal qui a déclenché le problème. Passez en revue les schémas de trafic récents, les journaux d’application et toute modification récente pour identifier la cause du volume élevé de requêtes.
- Validez la diffusion vidéo de votre application, la requête de plage HTTP et le comportement de mise en cache pour garantir des performances optimales et empêcher toute répétition.
- Après avoir confirmé que la ressource est diffusée à partir du cache et que l’utilisation du thread s’est normalisée, vérifiez que l’environnement de production est stable et accessible à tous les utilisateurs et utilisatrices.