AEMで特定のコンポーネントインスタンスのDispatcher キャッシュを無効にする

Adobe Experience Manager(AEM)では、ページ上の複数のコンポーネントが同じresourceTypeを共有している場合、特定のコンポーネントインスタンスのDispatcher キャッシュを無効にすることが困難になります。 例えば、ページ Aにコンポーネント Aとコンポーネント Bが含まれ、両方で同じresourceType (例えば、C)を使用している場合、Sling Dynamic Include (SDI)を使用してCをキャッシュから除外すると、両方のコンポーネントに影響します。 ただし、コンポーネント Bを除外しながらコンポーネント Aをキャッシュする必要があります。これを実現するには、コンポーネント Bのプロキシコンポーネントを作成し、プロキシのみをターゲットにするようにSDIを設定します。

説明 description

環境

  • 商品: Adobe Experience Manager (AEM)
  • インスタンス: SDIと共有resourceType コンポーネントを使用するすべての環境

問題/症状

  • ページ上の複数のコンポーネントが同じresourceTypeを共有しています。
  • Dispatcher キャッシュからコンポーネントインスタンスを1つだけ除外する必要があります。
  • SDIは、同じresourceTypeを持つすべてのコンポーネントを除外します。
  • デフォルト設定では、選択的キャッシュ制御を実行できません。

解決策 resolution

この問題を解決するには、次の手順に従います。

  1. キャッシュから除外するコンポーネント(プロキシコンポーネント Bなど)のプロキシコンポーネント(プロキシコンポーネント Dなど)を作成します。
  2. 元のコンポーネント(プロキシコンポーネント B)と同じ機能を使用するようにプロキシを設定します。
  3. 共有resourceTypeの代わりにプロキシコンポーネント Dを参照するように、Sling Dynamic Include (SDI)設定を更新します。
  4. 同じresourceTypeの他のインスタンスをキャッシュしたままにしながら、Dispatcher ルールを調整して、プロキシコンポーネント Dをキャッシュから除外します。

関連トピックス

AEMの基礎チュートリアルでSling Dynamic Includeを設定します。

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