legacy-knowledge-base
公開されました Sep. 10, 2025

Liferay クラスターのキャッシュ削除戦略

written-by

Gergely Szalay

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  1. あるノードでキャッシュ削除命令が発行された場合、削除メッセージは他のノードにも送信されますか?
  2. レプリケーションはクラスター環境でのデフォルトの動作ですか?
  3. あるノードで キャッシュの有効期限に達したとき 、エビクション メッセージは他のノードにも送信されますか?

環境

  • Liferay DXP 7.0+

解決策

  1. Liferay は、キャッシュされたアセットをまだ使用していて、リクエスト/レスポンスを処理するために必要とする可能性があるため、エビクションを他のノードにレプリケートしません。
  2. いいえ。ただし、更新メッセージを他のノードに送信して、キャッシュされたエンティティをローカルでダーティ/古いものとしてマークできるようにします。そのため、他のノードはキャッシュ ミスを取得し、その後のデータの再取得を実行する必要があります。
  3. キャッシュの有効期限メッセージは、すべてのノードに複製されるわけではありません。 1 つのノードがキャッシュされたデータを使用してリクエストを実行せず、キャッシュされたアセットを期限切れにするからといって、他のノードがそれらのキャッシュされたエンティティを積極的に使用して独自のリクエストを実行していないわけではありません。

追加情報

  • キャッシングは、実際には単一ノードでのアクティビティをサポートするためのものであり、クラスター全体のソリューションではありません。
  • 各ノードは独自のキャッシュを保持し、要求を処理するために必要な取得データを格納します。 ほとんどの場合、クラスタ ノードはすべて類似したリクエストを処理するため、非常に類似したキャッシュを持つことがよくありますが、特にスティッキー ノードのサポートでは、単一のノードが、他のノードでは決して取得/使用されない管理者ユーザーのデータを取得している可能性があります。 .
  • ノードがメッセージを送信する必要がある唯一のアクティビティは、更新されたデータです。これにより、すべてのキャッシュがエンティティを古いものとしてマークし、後続の要求を処理するプロセスで古い/ダーティなデータを使用しようとしなくなります。
did-this-article-resolve-your-issue

legacy-knowledge-base