Dispatcher-Cache-Invalidierung für freigegebene Inhalte in AEM as a Cloud Service

Wenn Sie freigegebene Inhalte aktualisieren, die von zwischengespeicherten Seiten verwendet werden, kann durch das Veröffentlichen des freigegebenen Elements allein nicht sichergestellt werden, dass jede verarbeitete Seite oder CDN-Antwort neu ist. Adobe dokumentiert die explizite Dispatcher-Invalidierung durch Sling Content Distribution (SCD) in der Autoreninstanz; das von Adobe verwaltete CDN folgt den Antwort-Cache-Headern und der TTL separat. Um dies zu beheben, identifizieren Sie die betroffenen Seitenpfade, wählen Sie eine Invalidierungs- oder TTL-Strategie für Ihre Implementierung aus und testen Sie das Dispatcher- und CDN-Verhalten separat.

Beschreibung description

Umgebung

Adobe Experience Manager as a Cloud Service-Veröffentlichung mit Dispatcher und dem von Adobe verwalteten CDN.

Problem/Symptome

  • Nach dem Veröffentlichen eines Experience Fragments, Inhaltsfragments oder DAM-Assets zeigt eine Seite, die den freigegebenen Inhalt verwendet, die ältere Ausgabe an.
  • Sie müssen ermitteln, ob die Seite, die freigegebene Ressource oder die CDN-Antwort zwischengespeichert bleibt.
  • Es wird kein Produktfehler gemeldet. Die Frage betrifft das Verhalten bei Cache-Invalidierung und die Cache-Aktualität.

Ursache

AEM as a Cloud Service bietet eine standardmäßige Rückverweis-Cache-Invalidierung nur für Experience Fragments. Für Inhaltsfragmente und DAM-Assets ist eine benutzerdefinierte Konfiguration erforderlich, um sicherzustellen, dass verweisende Seiten invalidiert werden, wenn freigegebene Inhalte aktualisiert werden.

Lösung resolution

Gehen Sie wie folgt vor, um das Problem zu beheben:

  1. Überprüfen Sie das Verhalten bei der standardmäßigen Cache-Invalidierung:

    • Wenn Sie ein Experience Fragment veröffentlichen, löst AEM as a Cloud Service automatisch alle Seiten auf, die auf das Fragment verweisen, und gibt für jeden verbrauchenden .html eine reine Leerung auf. Es ist keine benutzerdefinierte Konfiguration erforderlich.
    • Wenn Sie ein Inhaltsfragment veröffentlichen, wird nur der Pfad des Inhaltsfragments ungültig. Seiten, die auf das Inhaltsfragment verweisen, werden nicht standardmäßig geleert.
    • Beim Veröffentlichen eines DAM-Assets werden nur das Asset und seine Ausgabedarstellungen ungültig. Seiten, die auf das Asset verweisen, werden nicht standardmäßig geleert.
    • Wenn Sie eine Seite veröffentlichen, wird nur der Seitenpfad geleert. Referenzierte Experience Fragments, Inhaltsfragmente und DAM-Assets werden nicht standardmäßig geleert.
    • Wenn /statfileslevel "2" konfiguriert ist, wird bei der Invalidierung eines Pfads unter einem Verzeichnis nicht der gesamte Teilbaum geleert. Nur der spezifische Pfad und die unmittelbar übergeordnete statfile sind betroffen.
  2. Um verweisende Seiten ungültig zu machen, wenn Inhaltsfragmente oder DAM-Assets veröffentlicht werden, verwenden Sie einen der folgenden unterstützten Ansätze:

    • Implementieren Sie einen benutzerdefinierten SCD-INVALIDATE-Handler, der verweisende Seiten auflöst, wenn ein Inhaltsfragment oder Asset veröffentlicht wird, und gezielte Invalidierungen auslöst.
    • Verwenden Sie die ACS AEM Commons Dispatcher Flush-Regeln , um Regex-basierte Zuordnungen zwischen veröffentlichten Inhalten und verweisenden Seiten zu erstellen.
    • Stellen Sie freigegebene Inhalte als unabhängig zwischenspeicherbare Fragmente bereit, z. B. mithilfe von Sling Dynamic Include.
    • Konfigurieren Sie als Zwischenlösung eine begrenzte TTL (Time-to-Live) für Seiten, die Inhaltsfragmente oder Assets verwenden, indem Sie cdn.yaml- oder Dispatcher-Antwortkopfzeilen verwenden.
  3. Nach der Implementierung des ausgewählten Ansatzes veröffentlichen Sie ein freigegebenes Inhaltselement und überprüfen Sie, ob alle verweisenden Seiten den aktualisierten Inhalt widerspiegeln.

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