このツイートで書いたとおり、Webサービスの高速化はいろいろやりようがあるということで。
この記事では、WordPressを動かしているPHPの高速化をしてみました。
変更前と変更後とでベンチマークした結果も載せていますので、参考になるかと。
全体構成で言うと、ここです。
青枠で囲った部分。
PHP以外の改善は、こちらにまとめてありますので、興味ある方は一読を。
PHP変更内容
具体的にはopcache/apcuを入れました。
PHPをdocker-composeで動かしていることもあり、簡単です。
こちらの記事を参考にさせていただきました。
RUNの部分を追加すればOKです。
FROM php:fpm-buster RUN docker-php-ext-install opcache bcmath && \ pecl install apcu && \ echo "extension=apcu.so" > $PHP_INI_DIR/conf.d/apcu.ini && \ cp $PHP_INI_DIR/php.ini-production $PHP_INI_DIR/php.ini
一通り書き換えて、php-fpmを再起動もしくはリロードします。
一応phpinfo()で確認します。
opcacheは入っています。
apcuも入っているようです。
変更前 vs 変更後
ベンチマークで性能を比較。
環境はRaspberry Pi 4で動作中のWordPressを使います。
↓の記事で紹介
計測は以下の仕様で行います。
n=5と少ないかもですが、中央値を使うのでそれなりに傾向はつかめるのではないかと。
・ChromeのDeveloper Toolsに付属しているLightHouseで計測する。 パフォーマンスのみにチェックを入れる。 ・Mobile/Desktopそれぞれ5回ずつ計測し、中央値を採用する。 ・Chromeのシークレットタブでページを開いてから計測する。
変更前
←Mobile Desktop→
変更後
←Mobile Desktop→
Mobileは5ポイント、Desktopは9ポイント上がりました!
特にMobileは元が11ポイントと低かったこともありますが、約150%になっています!
終わりに
いかがでしたか。
Nginxチューニング同様、WordPressには手を入れず大きく改善できるのでおすすめですよ!
Nginxチューニングはこちらからどぞ。
Comments