Redisを使ったオブジェクトキャッシュを使った高速化方法。
ページキャッシュもいいけれど
1台ならAPCu、複数サーバを扱う場合にはRedisを使って疎結にオブジェクトキャッシュしてみるのも乙ってもの。
また、併用しても良いですね!
環境
- CentOS7
- Redisインストール済み
さくさくと手順をご紹介
index.phpをバックアップ
1 |
# cp /var/www/vhosts/example.com/httpdocs/contents/index.php /var/www/vhosts/example.com/httpdocs/contents/index_org.php |
WordPress公開ディレクトリに移動します。
1 |
# cd /var/www/vhosts/example.com/httpdocs/contents/ |
predisをダウンロードします。
1 |
# wget http://uploads.staticjw.com/ji/jim/predis.php |
wp-index-redis.zipをダウンロードします。
1 |
# wget http://www.jeedo.net/downloads/wp-index-redis.zip |
権限の設定を行います。
1 |
# chmod 644 wp-index-redis.php predis.php |
index.phpのバックアップ
1 |
# mv index.php index_bak.php |
index.phpを置き換えます。
1 |
# mv wp-index-redis.php index.php |
PHPでRedisを扱えるモジュールのインストールを行います。
1 |
# yum install php-pecl-redis |
PHPが扱えるようにWEBサーバを再起動させて下さい。
1 |
# systemctl restart httpd |
WordPressの管理画面やURLからプラグイン【Redis Object Cache】をダウンロードを行い、インストールして有効化させて下さい。(https://ja.wordpress.org/plugins/redis-cache/)
WPのRedis設定サンプル
1 2 3 4 5 |
# vi wp-config.php #Redis設定 define('WP_REDIS_HOST', '127.0.0.1'); define('WP_REDIS_MAXTTL', 3600); |
オブジェクトがキャッシュされているか確認してみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 |
# redis-cli 127.0.0.1:6379> keys * (略) 692) "wp_:post_meta:11112" 693) "wp_:post_meta:13333" 694) "wp_:post_meta:4444" 695) "wp_:posts:5555" 696) "wp_:post_meta:11233" 127.0.0.1:6379> |
Redisにキャッシュされていますね!
お疲れ様です。