Edited at

nginx+php-fpm(5.5)+fastcgi+OPcacheでWordpressが重い

More than 3 years have passed since last update.

タイトル通りなのですが、一応解決(?)というか前よりはマシになったのでメモ書きです。というかかなりハマったので…

(fastcgiやnginx+php-fpmの構築などは割愛します。)

環境は

nginx 1.6.2

PHP 5.5.22

FPM/FastCGI + cache

Opcache v7.0.4

で、主にWordpressを利用したウェブサイトを運営しています。月間PVは大体30万くらいです

2015-03-02_00-58-09.png

ここ数日色々弄ってふとServer monitorを見るとこんなことになっていました。CPU使用率がやけに高くまともにサイトに接続できなくなっておりました。

topコマンドで様子を見ると

2015-02-25_23-49-08.png

php-fpmプロセスがCPUを占拠していました。

この時の www.conf はこんな感じ


/etc/php-fpm.d/www.conf

pm = dynamic

pm.max_children = 20
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 15
pm.max_requests = 500

色々調べると pm = dynamic は pm = ondemand の方がいいやら出てきますがこの部分を変えてもうちのサーバーではあまり変化はありませんでした。

fastcgiが作ったキャッシュへのアクセスは全く問題無いのですが、php-fpmプロセスが処理をし出すと途端に重くなります。Wordpressの管理画面にアクセスすると体感でよく分かります

php-fpmのUnixソケット通信の問題? → 127.0.0.1:9000 に変えても変化なし

ということはOPcacheが効いてない?

$ php -v

PHP 5.5.22 (cli) (built: Feb 18 2015 17:54:45)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend Technologies
with Xdebug v2.2.7, Copyright (c) 2002-2015, by Derick Rethans

動いてる

$ vim /etc/php.d/opcache.ini

opcache.enable=1

ちゃんと1 になっている。

うーん

そしてふと気づいた

h805yhge.jpg

with Xdebug v2.2.7, Copyright (c) 2002-2015, by Derick Rethans

...

まさか

デバッグ状態で動いていました。というか普通にインストールしただけなはずなんですけどね…なぜか with Xdebug v2.2 ~ が。原因はこれっぽい?

$ vim /etc/php.d/xdebug.ini

zend_extension=xdebug.so
xdebug.remote_autostart=0
xdebug.remote_enable=0
xdebug.profiler_enable=0

0にして保存。

サーバーをリロードしてみましたが…変わりません。

$ vim /etc/php.d/xdebug.ini

;zend_extension=xdebug.so
xdebug.remote_autostart=0
xdebug.remote_enable=0
xdebug.profiler_enable=0

;zend_extension=xdebug.so

強制的にコメントアウト!

2015-03-02_23-44-42.png

with Xdebug が消えた

php-fpm -t && service php-fpm reload

nginx -t && service nginx reload

すると

.

..

...

....

2015-03-02_22-30-29.png

!

2015-03-02_23-38-02.png

                           ,. -‐==、、

              ,. ===、、 o   ○o.  i       :::ト、

            ,/      `ヾ´´`ヽ、 ゚ .l       :::ト、\イヤッッホォォォオオォオウ!

            //      .::::/  :::::!===l      :::|ス. ',

             /./       .::::/   ::::l    |  _
..... ::::|} ヽ l-、

.           ,ィク ,'..
_    .::::/    ::::l    :l '´    `)'`ヽ ヾ;\

       /::{゙ ヽ、 `丶、;/‐‐- 、::::l    '::┬‐--<_   } ./;:::::\

     /::::::::!   ,>---‐'゙ー- ..._)イ ,. -‐‐-、ト、   |l::ヽ /;';';';';::::\

.     /|::::::;';';'\/} (ヽ、  
/|   (´    _,.ィ!::ヽ.  ヾー'´;';';';';';';';';:: /ヽ、

…けどまだ高いような気もする

が、頭打ちになるよりはいいので一応このまま様子見…

何か他に原因があるんだろうか