在AEM中停用特定元件例項的Dispatcher快取

在Adobe Experience Manager (AEM)中,當一個頁面上的多個元件共用相同的resourceType時,為特定元件執行個體停用Dispatcher快取會變得困難。 例如,如果頁面A包含元件A和元件B,且兩者使用相同的resourceType (例如C),則使用Sling動態包含(SDI)從快取中排除C將會影響這兩個元件。 不過,除了元件B之外,還需要快取元件A。為此,請建立元件B的Proxy元件,並將SDI設定為只鎖定該Proxy。

說明 description

環境

  • 產品: Adobe Experience Manager (AEM)
  • 執行個體: 任何使用SDI和共用resourceType元件的環境

問題/症狀

  • 一個頁面上的多個元件共用相同的resourceType
  • 只需從Dispatcher快取中排除一個元件例項。
  • SDI會排除所有具有相同resourceType的元件。
  • 使用預設設定無法達成選擇性快取控制。

解決方法 resolution

若要解決問題,請依照下列步驟進行:

  1. 針對您要從快取中排除的元件(例如Proxy元件B)建立Proxy元件(例如Proxy元件D)。
  2. 將Proxy設定為使用與原始元件(Proxy元件B)相同的功能。
  3. 更新您的Sling Dynamic Include (SDI)設定,以參照Proxy元件D而非共用resourceType
  4. 調整Dispatcher規則以從快取中排除Proxy元件D,同時允許相同resourceType的其他執行個體保持快取。

相關閱讀

在AEM foundation教學課程中設定Sling Dynamic Include

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f