AEMのstatfileslevelを使用したDispatcher キャッシュ無効化スコープの設定

この記事では、/content/siteAや/content/siteBなどの個別のサイト サブツリーに対するキャッシュ無効化を分離するために、Dispatcher /statfileslevel設定を使用する方法について説明します。 設定は、AEM リポジトリルートから直接ではなく、キャッシュ docrootから測定されます。 これに対処するには、サイトパスをDispatcher キャッシュディレクトリにマッピングし、目的のサイト境界でレベルを設定し、1つのサイトで無効化をテストします。

説明 description

環境

Adobe Experience Manager Dispatcher(すべてのバージョン)

問題/症状

  • 1つのサイトサブツリーの下にあるコンテンツを公開する場合は、独立した兄弟サイトサブツリーを無効にせずに、そのサイトのキャッシュされたコンテンツを無効にする必要があります。
  • 目的の範囲は、リポジトリパスとdocrootの下のDispatcher キャッシュディレクトリとの関係によって異なります。

原因

Dispatcherでは、/statfileslevelを使用して、キャッシュ docrootの下に.stat ファイルを作成する場所を制御します。 docrootはレベル 0です。 無効化の際、Dispatcherは、無効化されたリソースへのパスに沿って、設定されたレベルまたはリソースのディレクトリの深さのいずれか低いほうまで.stat個のファイルにタッチします。 キャッシュされたリソースは、最も近い該当する.stat ファイルに対してチェックされます。 レベルが低すぎると、上位レベルの無効化ドメインを共有しているサイトが残る可能性があります。実際のキャッシュディレクトリ構造と独立したサイトサブツリーの境界に基づいてレベルを設定します。

解決策 resolution

この問題に対処するには、次の手順に従います。

  1. /cacheの下にあるDispatcher ファーム設定を確認し、/statfileslevelを見つけます。
  2. AEM コンテンツパスを、Dispatcher キャッシュ内の対応するディレクトリにマッピングします。 設定されたキャッシュ docroot (レベル 0)を特定し、その下のディレクトリ レベルをカウントします。 キャッシュ構造が<docroot>/content/siteAおよび<docroot>/content/siteBの場合、/contentはレベル 1で、各サイトルートはレベル 2です。
  3. /statfileslevelを意図した無効化バウンダリのレベルに設定します。 上記の例では、/statfileslevel "2"は.stat ファイルを各サイトルートに配置します。 /content/siteAの下のコンテンツの公開は、そのパスに沿った.stat ファイルにタッチします。独立した/content/siteB サブツリーは、独自のサイトルート .stat ファイルを使用し、その変更によって無効にされません。 注意:より大きい値を指定しても、無効化が広がることはありません。 これにより、.stat個のファイルをキャッシュツリーの奥深くに配置し、ディレクトリ構造がサポートする、より詳細な無効化ドメインを作成できます。 各無効化は、設定されたレベルまでのパスに沿って.stat ファイルにも適用されます。 この分離は、サイトツリーが独立している場合にのみ使用します。無効化デザインで共有またはクロスサイトコンテンツの参照を考慮します。
  4. 設定を変更した後、1つのサイトサブツリーの下にテスト変更を公開します。 更新されたサイトコンテンツが無効になっており、独立した兄弟サイトサブツリーが不必要に無効になっていないことを確認します。

関連トピックス

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