スペック解説 PHP
いわゆるプログラム言語のようなものですが、正確にはテキストで記述されたスクリプト言語と呼ばれるものです。WordPressの基本部分はPHPで作られています。
スクリプト言語というのは、処理される段階で機械語に翻訳され実行されます。通常のプログラムに比べ、動作時に処理が重くなりますが、テキストで管理できるため書き換えやテストが容易です。
PHPのバージョン
レンタルサーバによって、導入しているバージョンが異なります。最新のバージョンを採用しているかどうか確認してみてください。バージョンが上がるごとに速度面が改善されています。
ただ使っているPHPツールによっては、新しいバージョンで動作しない場合があるから注意してね。
でも自分で調べるのは大変そうだね。
そうだよね。少し強引な方法だけど、PHPのバージョンはレンタルサーバの管理画面で選べることが多いから、一度最新のバージョンで試してみて、不具合が出たら少しずつ下げていくのがいいかもね。
モジュール版とCGI版
PHPには二つの動作環境があります。
- ウェブサーバの処理の中で動作する「モジュール版」
- ウェブサーバとは独立して動作する「CGI版」
モジュール版はCGI版に比べて処理速度が早いのですが、CGI版の処理速度を改善する、FastCGIという仕様もあります。エックスサーバのサイトでは下記のように説明されています。
「FastCGI」とは、プロセス初回実行時に該当プロセスを一定時間サーバー内に保持することで、次回以降、実行時の「プロセスの起動/終了」を省略し、 高速化や、プロセスの起動/終了に伴うCPUへの負荷を軽減することで、速度面で優れるとされるモジュール版PHPと同等の処理能力を持つ動作方式です。
https://www.xserver.ne.jp/manual/man_server_php_fastcgi.php
モジュール版はウェブサーバ内で動作するため、レンタルサーバのように複数のユーザーが利用する環境では、セキュリティ面に課題がある、っていうことも聞いたよ。
じゃあ、モジュール版は避けた方がいいの?
レンタルサーバはほとんどCGI版が使われているみたいだね。モジュール版と選べる場合は、CGI版の方が安心かも。
PHPの高速化
PHPの高速化は「FastCGI」の他、「APC / APCu / OPcache」など様々な仕組みがあります。いずれも処理工程の一部をキャッシュすることにより高速化を図っています。
mixhostではLiteSpeedというウェブサーバが使われているけど、PHPの動作モードがLTAPIという独自のものらしい。LiteSpeed自体、高速なウェブサーバ とされているからそれに特化したものみたいだね。
PHPのまとめ
- PHPのバージョンが速度にも影響
- どのような高速化が図られているかチェック
- レンタルサーバではCGI版が多い
- LiteSpeedに特化した動作モードもある