モジュールIDのキャッシュ

a-blog cms Ver.2.11.0よりモジュールIDのキャッシュ機能が使えるようになりました。a-blog cms のキャッシュ機能は基本的に、ページ単位でキャッシュを行う仕組みになっております。 そのため、URLが少しでも違うとキャッシュが利用されず、そのページにある全てのモジュールが動作してしまいます。ページを構成する要素はたくさんありますが、例えば「グローバルナビゲーション」や「フッター」の情報などは頻繁に変わるものではありません。 情報は変わっていないのに、そのページにある他の要素が更新されたことで、このような更新が少ないモジュールも毎回PHPが動作して生成しなおすのは、パフォーマンス的にあまりよろしくありません。

そこでVer.2.11.0からはページ単位以外に更新頻度が違うモジュールごとにキャッシュができる仕組みを導入しました。

設定方法

管理画面 > モジュール > 該当するモジュールIDに移動します。「条件設定」を開き「キャッシュ」に分単位で数値を設定します。 ここで設定した時間がキャッシュの有効期限となります。


モジュールキャッシュの削除タイミング

モジュールのキャッシュは以下の条件で削除されます。

  • 該当のモジュールIDを保存したとき(標準モジュールの場合)
  • キャッシュの有効期限(分)を過ぎたとき
  • ルートブログのダッシュボードで「モジュール キャッシュ」を選んでキャッシュをクリアしたとき
  • システム更新を行ったとき

エントリーやカテゴリーを更新してもモジュールキャッシュは削除されません。更新をすぐ反映させたいモジュールにはキャッシュを設定しないか、更新後にモジュール キャッシュをクリアしてください。

モジュールキャッシュのキーは「モジュール名」と「モジュールID」だけです。テンプレートの内容や表示中の URL(URL コンテキスト)、ブログは区別しません。

  • 標準モジュールはテンプレートを当てはめた後の HTML をキャッシュします。テンプレートを修正しても、キャッシュが切れるまで(またはキャッシュをクリアするまで)修正前の表示が続きます。
  • V2 モジュール(Twig)はテンプレートに渡すデータをキャッシュします。テンプレートの修正はすぐ反映されますが、データはキャッシュが切れるまで更新されません。
  • URL コンテキストを参照する(引数にチェックを入れた)モジュールIDや、ページャーを使うモジュールIDにはキャッシュを設定しないでください。最初に生成した内容がすべてのページで使い回されます。
  • ログイン中はキャッシュを使わずに毎回生成します。キャッシュの効き方はログアウトして確認してください。