1. 基本概要
Object Cache Pro(旧称 Redis Object Cache Pro)はWordPress 専用のエンタープライズ級 Redis オブジェクトキャッシュプラグインです。通常のページキャッシュが静的 HTML を保管するのに対し、オブジェクトキャッシュは WordPress 内部の DB クエリ結果・ユーザーセッション・WooCommerce カート情報・テーマ設定・プラグインデータを Redis(メモリ DB)に保存します。ページを読み込むたびに MySQL へ重複問い合わせする処理を削減し、DB 負荷低下・TTFB 短縮・動的コンテンツ(ログイン状態、管理画面、EC 商品ページ)の高速化を実現します。無料版 Redis Object Cache を完全に再設計・最適化した有料製品で、大手マネージド WP ホスティング(Cloudways、Rocket.net、Convesio)が標準採用していますObject Cac...。
2. 動作の仕組み
- WordPress が DB からデータを取得する際、プラグインが処理を横取り
- 取得したデータを Redis のメモリ上にシリアライズして保管
- 次回同じデータ参照時は MySQL にアクセスせず Redis から高速読み出し(キャッシュヒット)
- 記事編集・商品更新時は自動的に該当キャッシュのみ無効化、不要な全キャッシュ削除を回避
一般的に DB クエリ数が 40~60% 削減され、動的ページの表示速度が大幅に向上します。
3. コア主要機能
(1)パフォーマンス最適化機構
- igbinary バイナリシリアライズ:標準 PHP シリアライズよりデータ容量を約 50% 削減、Redis のメモリ消費を抑える
- LZ4/Zstd 圧縮機能:大容量キャッシュデータを圧縮保管
- コマンド一括送信:複数 Redis 処理をまとめて実行しネットワーク負荷を低減
- 非同期キャッシュ削除:大量キャッシュ消去時もサイトの応答性が落ちない
- キャッシュプリロード:頻繁にアクセスされるデータを事前にキャッシュへ投入(ウォームキャッシュ化)
(2)Redis マルチ構成完全対応
単一インスタンス、Sentinel(高可用構成)、Redis クラスタ、TLS 暗号化接続に対応、Redis7.4 まで最新バージョンをサポート。複数サイトを同一 Redis サーバーで運用する際の DB 番号分離にも対応。
(3)WooCommerce をはじめとするプラグイン最適化
WooCommerce、Yoast SEO、Query Monitor、Jetpack と深く統合されており、商品一覧・カート・決済画面・在庫情報のキャッシュ不具合が発生しにくいよう調整済み。EC サイト・会員サイトとの相性が非常に高いです。
(4)監視・分析・デバッグ機能
- 管理画面にリアルタイムダッシュボード:キャッシュヒット率 / ミス率、Redis メモリ使用量、通信回数、応答時間を可視化
- 詳細ログ出力機能:キャッシュの読み書きエラー・接続障害を追跡可能
- Query Monitor、WP デバッグバーと連携し、各リクエストのキャッシュ状況を確認
- 豊富な WP-CLI コマンド:キャッシュの有効化 / 無効化・フラッシュ・状態確認をコマンド操作可能
- サイトヘルス機能と連携し Redis 接続の健全性チェック
(5)安定性・障害耐性
- グレースフルデグラデーション:Redis サーバーが停止した場合、自動的に通常の DB アクセスに切り替わりサイトがダウンしない
- 自動再接続処理、競合状態(レースコンディション)の回避ロジックを実装
- 2000 件以上の自動テストでコード品質を保証、コードカバレッジ 100%Object Cac...
- WordPress 標準オブジェクトキャッシュ API に完全準拠、テーマ・プラグインとの衝突が少ない
(6)開発者向け拡張性
各種フィルター・フックが用意されており、キャッシュ TTL の個別設定、特定グループのキャッシュを無効化、永続キャッシュグループの指定など細かいカスタマイズが自由。MU プラグインとして配置可能で、複数サイト(マルチサイト WordPress)環境にも対応。
4. 無料版(Redis Object Cache)と Pro 版の差分
1. データシリアライズ・圧縮機能
- 無料版:PHP 標準の serialize 方式のみ利用可能、データ圧縮に対応していない
- Pro 版:igbinary によるバイナリシリアライズ、LZ4・Zstd 圧縮に対応し、Redis のメモリ消費量を削減できる
2. Redis の接続・クラスタ構成対応
- 無料版:単一の Redis サーバーインスタンスだけに対応
- Pro 版:Redis クラスタ、Sentinel 高可用構成、TLS 暗号化通信に完全対応、複数サイトの DB 分割管理にも対応
3. エラー処理・システム安定性
- 無料版:簡易的なエラー検知のみで、Redis 停止時の挙動制御が弱い
- Pro 版:Redis 障害発生時に自動でデータベース直アクセスへ切り替わる縮退運転機能、自動再接続処理、競合状態の回避ロジックが実装済み
4. 監視・分析・ログ機能
- 無料版:ダッシュボードに最低限のヒット率・使用率しか表示されない、詳細なログ出力機能が無い
- Pro 版:リアルタイムの詳細監視ダッシュボード、キャッシュ読み書きログ、エラー追跡機能、Query Monitor との連携機能を完備
5. WooCommerce との最適化
- 無料版:基本的な動作のみ保証され、EC 特有のカート・在庫・決済情報のキャッシュ制御が甘い
- Pro 版:WooCommerce の各種データ構造に専用最適化が施され、キャッシュ不具合が発生しにくい設計になっている
6. 高度なキャッシュ制御機能
- 無料版:キャッシュプリロード、非同期キャッシュ削除といった高速化機能が実装されていない
- Pro 版:アクセス頻度の高いデータを事前登録するキャッシュプリロード、大量削除時の負荷を抑える非同期フラッシュ機能を利用可能
7. サポートとアップデート
- 無料版:不具合対応はコミュニティフォーラムのみ、公式の優先対応は受けられない
- Pro 版:購入者向け公式優先サポート、継続的なバージョンアップデートの保証が付随する
8. 開発者向け拡張性
- 無料版:フック・フィルターが少なく、細かいカスタマイズに制限がある
- Pro 版:各種キャッシュ TTL 設定、特定キャッシュグループの制御など、柔軟なカスタマイズ用フックが多数用意され、WordPress マルチサイト環境にも万全対応
5. 導入に適したサイト
✅ 高アクセスブログ・メディアサイト
✅ WooCommerce 運営の EC ショップ(カート・ログインユーザーの高速化に最強)
✅ 会員制サイト・有料コンテンツサイト(aMember Pro と併用されるケースが多い)
✅ WordPress 管理画面の動作が重いサイト
✅ VPS / 専用サーバーで自身で Redis 環境を構築している運用
6. メリット・デメリット
メリット
- ページキャッシュでは高速化できないログインユーザー画面、管理画面、動的コンテンツを改善
- MySQL の負荷を大きく軽減し、DB サーバーのリソース逼迫を回避
- 商用プラグインの中で不具合が少なく、長期運用の安定性が高い
- 設定が比較的簡単、基本的に wp-config.php へ定数記述するだけで稼働
デメリット
- Redis サーバーを別途インストール・管理する必要がある(共有レンタルサーバーでは利用不可の場合あり)
- 有料ライセンス制(年額課金)、複数サイト運用するとコストが発生
- 高度なチューニングには Redis の基礎知識が必要
7. 簡単な導入フロー
- サーバーに Redis をインストールし起動
- プラグインを購入し WP へアップロード
- wp-config.php にライセンスキー・Redis 接続情報を記述
- 管理画面または WP-CLI でオブジェクトキャッシュを有効化
- ダッシュボードで接続状況・キャッシュヒット率を確認
使用方法
- WordPress をインストールし、圧縮ファイル内のredis-cache-proフォルダをサイトのwp-content/pluginsディレクトリへアップロードします。
- サーバー側に Redis ソフトウェアをインストールします。
- サイトで利用している PHP バージョンを確認し、バージョンに適合した Redis 拡張モジュールをインストールします。
- サイトルートディレクトリ配下のwp-config.phpファイルへ下記コードを追記してください
define('WP_REDIS_CONFIG', [
'token' => 'e279430effe043b8c17d3f3c751c4c0846bc70c97f0eaaea766b4079001c',
'host' => '127.0.0.1',
'port' => 6379,
'database' => 1, // change for each site
'timeout' => 0.5,
'read_timeout' => 0.5,
'retry_interval' => 10,
'maxttl' => 3600 * 24,
'retries' => 3,
'backoff' => 'smart',
'compression' => 'zstd', // `zstd` compresses smaller, `lz4` compresses faster
'serializer' => 'igbinary',
'async_flush' => true,
'split_alloptions' => true,
'prefetch' => true,
'shared' => true,
'strict' => true,
'debug' => false,
'save_commands' => false,
]);
define('WP_REDIS_DISABLED', getenv('WP_REDIS_DISABLED') ?: false);
※ファイルの最終行に記述するとエラーが発生するため、末尾以外の箇所に挿入してください。
- WordPress 管理画面にログインし、プラグイン管理ページより本プラグインを有効化します。
- プラグイン有効化後は自動的に設定画面へ遷移します。画面内のボタンを押下し、キャッシュ機能を起動してください。