WordPressのメモリ消費を節約する

WordPressを動かしてるこのサーバが重くてどうしようもなくなってきたので、メモリを節約するようチューニングしてみました。試してみたことをメモ。

サーバ環境:

  • メモリ256MBの軟弱VPSです。
  • Ubuntu 9.04

かなり適当にやっつけているので、参考にならん!って方は僕が参考にしたこちらなんかをどうぞ:
Optimize your Apache VPS for WordPress | Jestro

Apacheのモジュールを減らす

…と思ったけど無駄なものは最初から何もなかった。

php.ini

影響しそうなのはmemory_limit。 PHPがApacheと組んで消費するメモリはmemory_limit*httpd.confのMaxClientsとのことなので、これを適当に減らしてみる。あと、memory_limitを変更したらpost_max_sizeがそれを超えないように設定すべきとのことだけど、十分下回ってるようなので今は据え置き。

Before:

memory_limit = 32M
post_max_size = 8M

After:

memory_limit = 16M
post_max_size = 8M

httpd.conf

さっき触れたMaxClients。Ubuntu上のApache2+PHPはデフォルトでmpm_preforkを使ってるようなので、その関連設定を変更。値は適当です。

Before:


     StartServers          5
     MinSpareServers       5
     MaxSpareServers      10
     MaxClients          150
     MaxRequestsPerChild   0

After:


     StartServers          2
     MinSpareServers       2
     MaxSpareServers       4
     MaxClients           50
     MaxRequestsPerChild   0

本当はサーバのメモリが256MBとケチくさいのでMaxClients 50は高すぎるんだろうけども。

次はタイムアウト。短く切ってやる。ついでにKeepAliveのタイムアウトも短く。ここも適当…。

Before:

Timeout 300
KeepAliveTimeout 15

After:

Timeout 30
KeepAliveTimeout 10

結果

だいぶ適当に数字を減らしただけなんだけども、十分使い物になるレベルにまで軽くなった。面倒だから特に検証もしてないけど、memory_limitとStartServersとMaxSpareServersが一番効いてるような気がする。ブログのアクセス数は大したことないから、たぶんこれでしばらく持つんじゃないだろうか。

Categories: HowTo's, Tips and Tricks |Tagged , | Trackback URL |
  • http://www.ryan5500.com ryan5500

    これ困ってた!助かります。
    ちなみに、僕はswapファイルをつくることで対処していました。
    lighttpdを使ってもfast-cgiでごっそり取られるので、webサーバはapache2(prefork)のままで。

  • merikonjatta

    うちの場合Swap領域は十分あったけどスラッシングがひどかった。

  • Pingback: さくらVPSのWebページ表示速度を上げる方法 つづき | 水色のドア