AEM Managed Services发布者由于Sling脚本JSP争用条件而不正常

本文介绍如何解决Adobe Experience Manager (AEM) Managed Services发布者由于Apache Sling脚本JSP模块中的竞争条件(通常由内存压力触发)而无法正常运行的场景。 该解决方案涉及应用Adobe支持部门提供的修补程序。

描述 description

环境

Adobe Experience Manager (AEM) Managed Services(所有受支持的版本)

症状

  • 由于运行状况检查失败,已从负载平衡器中删除发布者实例。
  • 服务在重新启动后恢复,但问题仍然存在。
  • 错误日志显示与JSP编译和文件删除失败相关的异常,例如:

org.apache.sling.scripting.sightly.SightlyException: org.apache.sling.api.SlingException:处理JSP页时出现异常…… classFile.delete()失败

  • 此问题无法应需复制。
  • 潜在业务影响:如果发布者运行状况未及时恢复,则所有最终用户都可能受到影响。

原因

Apache Sling脚本JSP模块中由内存压力和SoftReference缓存逐出触发的竞争条件允许并行线程处理相同的已编译JSP类。 这会导致不稳定和发布者运行状况检查失败。

解决方法 resolution

请按照以下步骤解决问题:

  1. 查看AEM发布者错误日志,了解与JSP编译和文件删除失败相关的异常,如上所述。

  2. 确认症状与概述的症状相匹配(发布者不正常、运行状况检查失败、JSP处理中引用classFile.delete()的错误)。

  3. 确定当前AEM Service Pack版本。 该修补程序适用于AEM 6.5.24及更高版本。 如果您使用的是早期版本,请联系Adobe支持人员以获取指导。

  4. 如果您使用的是受支持的版本,但尚未安装修补程序,请通过Experience League支持门户使用Adobe打开支持工单。 包括:

    • 问题描述和相关错误日志摘录

    • 您当前的AEM版本和Service Pack级别

    • 确认问题与本文中所述的场景相匹配

  5. 从Adobe支持收到修补程序包后,请使用AEM包管理器将其上传并安装到发布服务器实例。 按照贵组织的更改管理和部署过程操作。

  6. 安装后,请验证以下各项:

    • 在OSGi控制台中,org.apache.sling.scripting.jsp包处于​ 活动 ​状态。

    • 捆绑包版本与修补程序中提供的版本匹配。

    • 只安装捆绑包的一个实例。

  7. 监测发布者运行状况和错误日志,确认问题已得到解决。

  8. 如果在安装修补程序后问题仍然存在,请收集新的线程转储、栈转储和错误日志,并联系Adobe支持人员以获取进一步分析。

recommendation-more-help
experience-cloud-kcs-help-kbarticles