在AEM as a Cloud Service中使用专用出口IP排除外部API调用速度缓慢的问题
本文介绍了在使用具有专用出口IP的高级联网时,如何诊断和解决从Adobe Experience Manager as a Cloud Service (AEMaaCS)发出的外部API调用延迟较高的问题。 其中涵盖了提高性能的常见原因以及建议的最佳化措施。
描述 description
环境
- Adobe Experience Manager as a Cloud Service (AEMaaCS)启用了高级联网和专用出口IP。
- Adobe Experience Manager Cloud Manager
症状
通过专用出口IP路由时,从AEMaaCS发出的外部API调用显示较高的延迟。 虽然对同一API端点的直接调用(AEM外部)会快速返回,但使用专用出口IP从AEM进行的调用可能会慢几倍。 在进行多个此类API调用的页面上尤为明显,这会增加滞后,从而导致页面加载时间变慢。 用于测量API响应时间的自定义代码或servlet确认此行为。
原因
延迟增加的主要原因是为每个API调用建立新连接时TLS握手的开销。 如果未实现连接池,则每个请求都将产生完整的握手开销。 专用出口IP和高级网络配置也可能引入额外的网络路径延迟。
解决方法 resolution
请按照以下步骤解决问题:
- 验证您的应用程序代码是否将连接池用于对外部API的传出HTTP请求。 这减少了为每个请求建立新连接和TLS握手的开销。
- 查看您的自定义代码或servlet,以确认已根据Adobe针对AEMaaCS的HTTP客户端准则实施连接池。
- 在AEM创作或发布环境中,对外部API端点执行直接curl请求以测量基线网络延迟。
- 比较启用和未启用专用出口IP的响应时间,以确定额外的延迟是否特定于高级联网配置。
- 使用逐相划分工具(例如输出较详细的curl)来确定TLS握手是否是延迟的主要原因。
- 在Cloud Manager中,确认已为您的环境启用高级联网和专用出口IP。
- 确保出站HTTP/HTTPS连接使用为AEMaaCS配置的平台系统代理,并且自定义代码不会绕过这些设置。
- 实施连接池并确认网络配置后,监控API响应时间以进行改进。
- 如果仍存在严重延迟,请考虑升级到Adobe支持,以进一步在网络或基础架构级别进行调查。
- 进行更改后,重新测试来自AEM的出站API调用,以确认改进的响应时间和专用出口IP的一致使用。
recommendation-more-help
experience-cloud-kcs-help-kbarticles