AEM as a Cloud Service의 전용 이그레스 IP를 사용하여 느린 외부 API 호출 문제 해결

이 문서에서는 전용 이그레스 IP로 고급 네트워킹을 사용할 때 Adobe Experience Manager as a Cloud Service(AEMaaCS)에서 수행된 외부 API 호출에 대한 높은 지연을 진단하고 해결하는 방법에 대해 설명합니다. 성능 향상을 위한 일반적인 원인과 권장 최적화를 다룹니다.

설명 description

환경

  • 고급 네트워킹 및 전용 이그레스 IP가 활성화된 Adobe Experience Manager as a Cloud Service(AEMaaCS)
  • Adobe Experience Manager Cloud Manager

증상

AEMaaCS에서 시도된 외부 API 호출은 전용 이그레스 IP를 통해 라우팅될 때 훨씬 더 높은 지연 시간을 보여줍니다. 동일한 API 엔드포인트(AEM 외부)에 대한 직접 호출은 빠르게 반환되지만, 전용 이그레스 IP를 사용하는 AEM에서의 호출은 몇 배 더 느릴 수 있습니다. 이러한 API 호출을 여러 번 수행하는 페이지에서 특히 이러한 지연 시간 증가가 두드러져 페이지 로드 시간이 느려집니다. API 응답 시간을 측정하는 데 사용되는 사용자 지정 코드 또는 서블릿이 이 동작을 확인합니다.

원인

지연 시간 증가의 주요 원인은 각 API 호출에 대한 새 연결을 설정할 때 TLS 핸드셰이크의 오버헤드입니다. 연결 풀링이 구현되지 않으면 각 요청으로 인해 전체 핸드셰이크 비용이 발생합니다. 전용 이그레스 IP 및 고급 네트워킹 구성에서도 추가 네트워크 경로 지연이 발생할 수 있습니다.

해결 방법 resolution

아래 단계에 따라 문제를 해결하십시오.

  1. 응용 프로그램 코드가 외부 API에 대한 아웃바운드 HTTP 요청에 연결 풀을 사용하는지 확인합니다. 이렇게 하면 각 요청에 대해 새로운 연결 및 TLS 악수를 설정하는 데 드는 오버헤드가 줄어듭니다.
  2. 사용자 지정 코드 또는 서블릿을 검토하여 연결 풀링이 AEMaaCS에 대한 Adobe의 HTTP 클라이언트 지침에 따라 구현되는지 확인하십시오.
  3. AEM 작성자 또는 게시 환경에서 외부 API 엔드포인트에 대한 직접 curl 요청을 수행하여 기준 네트워크 지연을 측정합니다.
  4. 전용 이그레스 IP를 활성화한 상태에서 응답 시간과 활성화하지 않은 시간을 비교하여 추가 지연 시간이 고급 네트워킹 구성에 한정되는지 확인합니다.
  5. TLS 핸드셰이크가 지연의 주요 기여자인지 식별하려면 단계별로 분류 도구(예: 자세한 출력이 있는 curl)를 사용하십시오.
  6. Cloud Manager에서 고급 네트워킹 및 전용 이그레스 IP가 환경에 대해 활성화되어 있는지 확인합니다.
  7. 아웃바운드 HTTP/HTTPS 연결이 AEMaaCS용으로 구성된 플랫폼 시스템 프록시를 사용하며 사용자 지정 코드가 이러한 설정을 무시하지 않는지 확인하십시오.
  8. 연결 풀링을 구현하고 네트워크 구성을 확인한 후 개선을 위해 API 응답 시간을 모니터링합니다.
  9. 심각한 지연이 지속되는 경우 네트워킹 또는 인프라 수준에서 추가 조사를 위해 Adobe 지원 으로 에스컬레이션하는 것이 좋습니다.
  10. 변경 후 AEM의 아웃바운드 API 호출을 다시 테스트하여 향상된 응답 시간 및 전용 이그레스 IP의 일관된 사용을 확인합니다.
recommendation-more-help
experience-cloud-kcs-help-kbarticles