Redisは、オープンソースのインメモリデータ構造ストアです。WordPressでは、WordPress独自のオブジェクトキャッシュにより生成された値を永続的に保存し、キャッシュされたオブジェクトをページ読み込み間に再利用できます。

Redisのような永続オブジェクトキャッシュを使用すると、MySQLデータベース同じオブジェクトに対して2回クエリを実行せずに、キャッシュされたオブジェクトを再利用できます。その結果、RedisはウェブサイトのMySQLデータベースの負荷を軽減し、ウェブサイトの応答時間を短縮して、サイトの拡張性とトラフィック変動への対応能力を高めることができます。

Redisが有用になるウェブサイト

弊社プラットフォーム上のすべてのサイトにはページキャッシュが組み込まれています。ただし、ページキャッシュがあまり有用でないウェブサイトもあり、一部のECサイト、会員制サイト、フォーラムや掲示板、コメントが多数投稿されるブログなどの動的なサイトがこれに該当します。

ページキャッシングを使用できない高度に動的なウェブサイトは、Redisなどの永続オブジェクトキャッシュが便利です。

なお、Redisは通常、静的なブログ、会社の情報サイト、ニュースサイトなどの読み込み時間を改善することはありません。

KinstaサイトにRedisを追加する

弊社でホストしているサイトにRedisを追加する場合は、次の手順に従ってください。

  1. 弊社カスタマーサポートにチャットにてRedisの追加を依頼します。※お支払いに関するアクセス権を持つユーザー(企業の所有者、企業の管理者、および企業の経理係)のみがリクエスト可能です。
  2. 弊社エンジニアがお客様のサイトコンテナにRedisをインストールし、WP Redisをインストールします。経理部門がお客様のアカウントにRedisアドオンのサブスクリプションを追加します。※アドオンは1サイトあたり月額100ドルです。

注意事項

  • サイトにステージング環境と本番環境の両方があり、ステージング環境が不要になった場合は、削除してください。その後、本番サイトにRedisをインストールした後に再作成が可能です。ステージング環境を削除できない場合は、ステージング環境のコンテナにRedis(およびRedisプラグイン)を追加してください。この作業を行わない場合、次回ステージング環境の変更を本番環境に反映する際、本番環境のRedisが上書きされ、削除されてしまいます。
  • Redisの使用を中止する場合は、弊社カスタマーサポートまでチャットにてその旨をお伝えください。サイトコンテナからRedisを削除し、Redisアドオンのサブスクリプションを解約いたします。Redisアドオン未使用分の料金は、返金保証に従って返金させていただきます。
  • WP RedisまたはRedis Object Cache以外のプラグインを使用している場合、Kinsta APMでRedisキャッシュの正しいデータが表示されないことがあります。これはRedisが機能していないというわけではなく、APMツールが他のプラグインからRedisのデータを収集して表示できない可能性があるためです。

WordPressサイトでRedisを使用する

Redisがインストールされ、プラグインでサイトに統合されると、バックグラウンドで動作します。

Redisのオブジェクトキャッシュをクリアするには、Kinsta MUプラグインによってWordPress管理画面に追加される「Clear Cache」機能を使用してください。これをクリックすると、ページキャッシュとサイト上でアクティブなオブジェクトキャッシュの両方をクリアします。

サイトにKinsta MUプラグインをインストールしていれば、WP-CLIで以下のコマンドを使ってRedisキャッシュをクリアすることも可能です。

wp kinsta cache purge --object

WordPress管理画面のツールバーでキャッシュをクリア
WordPress管理画面のツールバーでキャッシュをクリア

オブジェクトキャッシュ有効後は、サイトを徹底的にテストし、複数のユーザープロファイルを使用してウェブサイトの重要なプロセスをすべて確認して、キャッシュされたオブジェクトが誤って使用されないようにしてください。

キャッシュされたオブジェクトが誤って使用されていることがわかった場合、wp_cache_add_non_persistent_groups関数を使用して、オブジェクトキャッシュからオブジェクトの特定のグループを除外することができます。オブジェクトキャッシュのパフォーマンス改善は、弊社によるRedisサポートの範囲外です。必要に応じて、WordPress開発者と協力して実施してください。

KinstaによるRedisのサポートの範囲

弊社によるRedisのサポート範囲は、Redisと必要な依存関係をサイトコンテナーにインストールし、RedisをWordPressで使用できるようにすることに限定されます。Redisのウェブサイトへの統合、およびオブジェクトキャッシュからオブジェクトの特定のグループを除外することは、各ウェブサイトの所有者であるお客様の責任となります。Redisの統合にサポートが必要な場合は、豊富な知識を持つWordPress開発者の力を借りることをお勧めします。