AEM 6.5:Dynamic Media编码视频工作流在并行视频上传期间导致CPU激增
本文介绍如何在Adobe Experience Manager 6.5中并行上传视频期间,解决由Dynamic Media编码视频工作流导致的CPU峰值问题。
描述 description
环境
Adobe Experience Manager (AEM) 6.5 SP24(所有平台)
问题/症状
将多个视频资产(例如:15-20个视频,每个视频为10-80 MB)同时上传到生产创作服务器时,Dynamic Media编码视频工作流会触发并行的FFmpeg转码过程,导致CPU出现严重峰值。 服务器变得无响应,需要重新启动。 在上传每个30 MB的5个视频时,在较低环境中会出现类似行为。
症状:
- 在视频资源上传期间,创作服务器上的CPU利用率很高
- 创作实例变得无响应,必须重新启动
- 在问题得到解决之前,企业用户无法上传视频资产。
错误日志显示,在服务器中断之前,FFmpeg转码步骤处于活动状态。
原因
由于队列主题(前导斜杠)配置错误,未限制由Dynamic Media编码视频工作流触发的并行FFmpeg处理。
更正主题并使用专用队列可控制并发性,从而防止CPU达到峰值。
解决方法 resolution
请按照以下步骤解决问题:
-
审核工作流配置:
- 识别用于视频编码的工作流模型(例如:
Dynamic Media Encode Video)。 - 通过上传测试视频并检查
/system/console/slingevent主题以确认工作流主题(例如:com/adobe/granite/workflow/job/var/workflow/models/nhbvideoencode)。
- 识别用于视频编码的工作流模型(例如:
-
配置专用的Ordered Sling作业队列:
-
为工作流主题创建自定义Sling作业队列。
-
确保队列主题与
/system/console/slingevent中显示的主题完全匹配(无前导斜杠)。 -
示例:
- 正确:
com/adobe/granite/workflow/job/var/workflow/models/nhbvideoencode - 不正确:
/com/adobe/granite/workflow/job/var/workflow/models/nhbvideoencode
- 正确:
-
-
设置队列排名和并发:
- 为自定义队列分配比默认工作流队列更高的排名(例如:1000)。
- 配置并发设置以限制FFmpeg处理(例如:设置
maxConcurrentJobs以限制同时执行)。
-
验证配置:
- 重置工作流状态并重新运行工作流。
- 确认作业通过专用队列路由,并且在并行上传期间CPU利用率保持稳定。
-
在较低环境中测试:
- 同时上传多个视频并监控CPU使用情况。
- 如果成功,则将配置应用于生产。
recommendation-more-help
experience-cloud-kcs-help-kbarticles