Adobe Experience Manager의 콘텐츠가 있는 홈페이지가 로드되지 않음

AEM as a Cloud Service은 간헐적으로 빈 홈 페이지를 제공하여 사용자 경험을 방해하고 잘못된 중단 시간 경고를 트리거합니다. 조기 캐싱, 초기화되지 않은 서비스 또는 렌더링 오류로 인해 이 문제가 발생하는 경우가 많습니다. 이 문서에서는 안정적인 컨텐츠 전달을 위해 캐시 규칙을 조정하고, 웜업 동작을 검토하고, 사용자 지정 구성 요소에 대한 상태 검사를 추가하여 이 문제를 해결하는 방법에 대해 설명합니다.

설명 description

환경

이 문제는 Adobe Experience Manager(AEM) as a Cloud Service - 사이트(특히 프로덕션 환경)에 영향을 줍니다.

문제/증상

홈페이지가 컨텐츠 없이 간헐적으로 로드되어 빈 페이지가 제공됩니다. 모니터링 도구는 홈페이지 다운타임을 나타내는 여러 경고를 생성합니다. 이 문제는 10~20분 내에 자체적으로 해결되지만 자주 재발합니다. 이러한 기간 동안 분석은 페이지 크기의 불일치를 보여주며 시스템은 빈 페이지의 캐시된 버전을 제공합니다.

해결 방법 resolution

다음 단계를 사용하여 이 문제를 해결하십시오.

  1. 오래되거나 일관되지 않은 콘텐츠가 제공되지 않도록 적절한 캐시 무효화 규칙을 구성합니다. Dispatcher 무효화를 위해 가상 호스트 구성에 localhost 또는 127.0.0.1을(를) ServerAlias(으)로 포함하십시오. 자세한 내용은 Dispatcher 캐싱 이해AEM에서 캐시된 무효화된 페이지를 참조하십시오.

  2. 모든 서비스를 초기화하기 전에 요청을 보내는 경우 웜업 서비스를 일시적으로 비활성화합니다. 이렇게 하면 불완전한 페이지가 캐시될 수 있습니다.

  3. 렌더링 오류로 인해 캐시된 null 값이 발생하는 문제를 해결하는 버그 수정을 적용하려면 AEM의 최신 버전으로 업그레이드하십시오.

  4. 코드베이스에서 Sling 모델을 검토하고 업데이트합니다(자세한 내용은 구성 요소에 대한 Sling 모델 만들기를 참조하세요).

    • 필요한 경우 주사만 선택 사항으로 표시하십시오.
    • 초기화 중에 런타임 예외를 방지하기 위해 코드에서 null 값을 명시적으로 처리합니다.
  5. 중요 사용자 지정 구성 요소가 트래픽을 제공하기 전에 초기화되도록 OSGi 상태 검사를 구현합니다.

    code language-none
    {
        "hc.name": "Required Custom Components",
        "hc.tags": [ "systemalive", "systemready"] ,
        "components.list": [ "com.example.core.services.impl.RenditionServiceImpl"]
    }
    

    /system/console/healthcheck?tags=systemready에 액세스하고 나열된 모든 구성 요소가 OK 상태를 반환하는지 확인하여 로컬에서 이 구성을 테스트합니다. 자세한 내용은 AEM as a Cloud Service에 대한 OSGi 구성을 참조하십시오.

  6. 시작 중 pod 로그를 검토하여 렌더링 실패 또는 초기화되지 않은 서비스(예: NullPointerException)와 관련된 예외를 식별합니다. 종속성을 적절히 삽입 및 초기화하여 이러한 문제를 해결합니다.

  7. 프로덕션 환경에 배포하기 전에 스테이징 환경에서 모든 변경 사항을 테스트하여 다운타임 또는 캐싱 문제의 위험을 줄입니다.

이러한 단계를 통해 서비스 초기화 오류 및 잘못된 구성 캐싱과 같은 근본 원인을 해결하여 반복적인 홈 페이지 중단을 방지하고 일관된 컨텐츠 전달을 보장할 수 있습니다.

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