「Linux」カテゴリーアーカイブ

php7.0.3にopcacheを導入してみた

phpのことをよく理解しておらず、まさか毎回アクセスする度にコンパイラが起動して解析を行っているとは思っていませんでした。
特に設定せずとも効率よくやっていると思っていたのにそうじゃないんですね。

というわけでopcacheを導入してみました。
opcacheは簡単に言うとアクセスされる度に毎回コンパイラを起動してphpのソースを解析していると時間がかかるので、解析後の状態をメモリに保存して次からはメモリから解析後のphpを直接読み込んじゃおうということをやってくれるモジュールのことです。

ここから先の手順ですが、私はphpをソースからコンパイルしているので、パッケージでやってる場合はどうするのか分かりません!
なのでここからはソースからインストールしている方が対象となります。

まずは環境についてですが、nginx1.10.1、php-fpm7.0.3、php7.0.3となります。

最初にOPCacheが有効になっているかチェックします。

これで何も表示されないとopcacheは入ってません。
では続いてモジュールが入っているか確認します。

opcacheが見当たらないので入ってません。

モジュールが入っていないので、まずはconfigureしなおしましょう。configureに下記オプションを追加します。

configure後makeしなおしてインストールします。

次にphp.iniを修正します。とりあえず公式の内容で設定しました。

同じくphp.iniでopcache.soのzend_extentionの場所を指定します。
opcache.soの場所は環境によるので適時変更してください。

次にphp-fpmをrestartします。

では、入っているか確認してみましょう。

ちゃんと OPcacheが入ってますね!

opcacheが仕事しているか確認する時は、私は下記のツールを使用しています。

OCP – Opcache Control Panel

ソースコード:https://gist.github.com/ck-on/4959032

上記ocp.phpをブラウズできる適当な場所に保存してアクセスしてみて下さい。下記画面が表示されます。(誰でもアクセスできないように制限はかけましょう)

hit率など確認したい項目はこれで事足りるはずです。
適宜様子を見ながらメモリ量など最適化していきましょう。

opcacheの導入については以上です。
導入前と導入後でどれだけ速度が変わったかまた一か月後ぐらいに追記します。

———————————広告———————————

———————————広告———————————

nginxとhttp2に移行

移行作業を始めて3ヶ月、やっとapacheからnginxへ移行が完了しました。

ついでに全てのページをhttps化して、http2に移行しました。稲妻が青くなって満足。

今回はchefを使用してコマンド一発で今の環境が構築できるようにしました。前回のサーバー構築は何をどうしたのか全く記憶になかったので…。
記録を残すのは大事なことですね。

特にベンチマークは取ってないですが、ページの読み込みも大分早くなっているはず。

SEO対策として、
SSL化の恩恵は微小。
だけど読み込み高速化の恩恵は大。

Googleのクローラーも早いページが好きらしいので、そこもかなり効果を見込めそうです。
いい結果が出るといいな。

———————————広告———————————

———————————広告———————————