Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

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

More than 5 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::ヽ /;';';';';::::\
.     /|::::::;';';'\/} (ヽ、  
/|   (´    _,.ィ!::ヽ.  ヾー'´;';';';';';';';';:: /ヽ、

…けどまだ高いような気もする
が、頭打ちになるよりはいいので一応このまま様子見…
何か他に原因があるんだろうか

nabeyaki
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away