AEM 6.5: Der Workflow für die Dynamic Media-Videokodierung verursacht eine CPU-Spitze während paralleler Video-Uploads

In diesem Artikel wird beschrieben, wie Sie CPU-Spitzen beheben können, die durch den Workflow für die Dynamic Media-Videokodierung während paralleler Video-Uploads in Adobe Experience Manager 6.5 verursacht werden.

Beschreibung description

Umgebung

Adobe Experience Manager (AEM) 6.5 SP24 (alle Plattformen)

Problem/Symptome

Beim gleichzeitigen Hochladen mehrerer Video-Assets (z. B. 15-20 Videos mit je 10-80 MB) auf den Produktionsautorenserver führt der Workflow-Trigger Dynamic Media-Videokodierung zu parallelen FFmpeg-Transkodierungsprozessen, was zu starken CPU-Spitzen führt. Der Server reagiert nicht mehr und muss neu gestartet werden. Ähnliches Verhalten tritt in niedrigeren Umgebungen auf, wenn 5 Videos mit je 30 MB hochgeladen werden.

Symptome:

  • Hohe CPU-Auslastung auf dem Autoren-Server während des Uploads von Video-Assets
  • Autoreninstanz reagiert nicht mehr und muss neu gestartet werden
  • Business-Anwender können Video-Assets erst hochladen, wenn das Problem behoben wurde.

Fehlerprotokolle zeigen, dass FFmpeg-Transkodierungsschritte vor dem Serverausfall aktiv sind.

Ursache

Die parallele FFmpeg-Verarbeitung, die durch den Workflow für die Dynamic Media-Videokodierung ausgelöst wird, wurde aufgrund eines falsch konfigurierten Warteschlangen-Themas (Schrägstrich) nicht gedrosselt.

Das Korrigieren des Themas und die Verwendung einer dedizierten Warteschlange ermöglichen eine gesteuerte gleichzeitige Ausführung, wodurch CPU-Spitzen verhindert werden.

Lösung resolution

Gehen Sie wie folgt vor, um das Problem zu beheben:

  1. Überprüfen Sie die Workflow-Konfiguration:

    • Identifizieren Sie das für die Videokodierung verwendete Workflow-Modell (z. B.: Dynamic Media Encode Video).
    • Bestätigen Sie das Workflow-Thema, indem Sie ein Testvideo hochladen und nach dem Thema /system/console/slingevent (zum Beispiel: com/adobe/granite/workflow/job/var/workflow/models/nhbvideoencode).
  2. Konfigurieren Sie eine dedizierte Warteschlange für sortierte Sling-Aufträge:

    • Erstellen Sie eine benutzerdefinierte Sling-Auftragswarteschlange für das Workflow-Thema.

    • Stellen Sie sicher, dass das Warteschlangen-Thema genau mit dem in /system/console/slingevent angezeigten Thema übereinstimmt (kein Schrägstrich).

    • Beispiel:

      • Richtig: com/adobe/granite/workflow/job/var/workflow/models/nhbvideoencode
      • Falsch: /com/adobe/granite/workflow/job/var/workflow/models/nhbvideoencode
  3. Festlegen von Warteschlangen-Ranking und Gleichzeitigkeit:

    • Weisen Sie der benutzerdefinierten Warteschlange einen höheren Rang zu (z. B.: 1000) als der standardmäßigen Workflow-Warteschlange.
    • Konfigurieren Sie Parallelitätseinstellungen, um die FFmpeg-Verarbeitung zu drosseln (z. B.: maxConcurrentJobs festlegen, um gleichzeitige Ausführungen zu beschränken).
  4. Konfiguration validieren:

    • Setzen Sie den Workflow-Status zurück und führen Sie den Workflow erneut aus.
    • Vergewissern Sie sich, dass Aufträge über die dedizierte Warteschlange weitergeleitet werden und die CPU-Auslastung während paralleler Uploads stabil bleibt.
  5. Testen in der unteren Umgebung:

    • Laden Sie mehrere Videos gleichzeitig hoch und überwachen Sie die CPU-Nutzung.
    • Wenden Sie bei Erfolg die Konfiguration auf die Produktion an.
recommendation-more-help
experience-cloud-kcs-help-kbarticles