GMOクラウドVPSサーバーがまた落ちたのでapacheとWordPressのチューニングを徹底してやる|アダルトサイト運営

2016年12月26日月曜日

サイト運営

t f B! P L

いまや飯の種であるアダルトサイトのメインのやつをGMOクラウドのひとつ上のクラスのVPSサーバーに引っ越したのだが、これで軽快になったと思ったのもつかのま、昨日、起きてアクセス解析を見ると、またもや深夜1時くらいに落ちて止まっている。

はてさて、これはどうなってるのかな。重いだけなら集中した時が過ぎると動きそうなものだが、落ちたままピクリと動かない。この状況が頻発している。これは構造的なものでメモリーがスワップするとかなんとかかんとかで、転がる雪だるまのように大きなって固まってるのだろう。

ただサイトは普段の動きはすいすいとアダルトサイトの割にはやたらと軽い。なのに、いきなり深夜1時くらいからアクセス不能になることが多い。なのでドースアタックの可能性もある。

最初に動かなくなった時にapacheのメモリー不足の警報が来ていたので、構造的な原因かドースアタックか、なにかのきっかけでapacheのメモリーが不足するのだな。アクセスはたいしてないのだが、記事が4万件あるので、そのへんでメモリーを食ってる可能性もある。

しかし、再開は再起動するだけでさくっとできた。つまり、雪だるまになってるループを終わらせて、メモリーを解放すると治るということだな。サーバーのOSと回線自体は余裕の速度があると思う。

などという推測を踏まえて、やれることをやれるだけしてみた。とりあえず速度が2倍くらいになって、昨夜は固まらなかった。apacheのチューニングというと、検索するとpreforkの設定の調整の仕方ばかり出てくるのだが、GMOクラウドでは、探しても見つからない。preforkではなくeventというMPMを使っているようだ。

でeventの設定の仕方を探したがこれがない。なので今回はやっていない。たぶんここが原因なのだが、仕方ないのでその周辺を軽くして対応することにした。

apache MPM設定を見直したら、CPU負荷が下がりWordPressが軽くなった
http://www.checksite.jp/apache-mpm-cpu-load-falls/
ApacheでCGIを使う場合にpreforkを使った方が良い状況とそのチューニングについて
http://hb.matsumoto-r.jp/entry/2014/09/11/025533


いま調べたらeventの設定はこのへんにいろいろ書いてあるようだ。あとで読む。これで落ちるようなら、次はeventからpreforkに変えて様子を見ようと思う。

今回やったこと。まずはアクセスログの見方を調べることから始めた。道は遠いな。

「Watchdog」を入れてサービス監視。
https://ex-cloud.jp/support/question/g-697


gzip圧縮して通信時間を短縮する。 
この一連の記事に書いてあるものはぜんぶやった。
http://www.atmarkit.co.jp/ait/articles/1602/26/news018.html

MariaDBの設定を調整してデータベースの処理を高速化する
http://www.atmarkit.co.jp/ait/articles/1602/25/news017_2.html

「翻訳アクセラレータ」を導入して高速化する
プラグイン「001 Prime Strategy Translate Accelerator」 

「Tuned」の設定とApacheの構成を変更
http://www.atmarkit.co.jp/ait/articles/1602/26/news018.html


PHPアクセラレータ「APC」を導入する
http://www.atmarkit.co.jp/ait/articles/1601/25/news004_4.html


PHPアクセラレータ「OPcache」、KVSの「APCu」を導入する
http://www.atmarkit.co.jp/ait/articles/1602/25/news017.html


cronを5分おきに変える。 
予約投稿のプラグインのせいか、どれが原因かわからないが、アクセスログを見ると1秒ごとにアクセスしていたので、間隔をあける。これも怪しい。有力な原因候補の一つ。
http://company.nankikumano.jp/contents/tech_info/313/
http://www.starlod.net/wp-cron.html

海外のIPアドレスからのアクセスを制限

やはりWordPressのログインページに大量のアクセスがあったのでやる。あと、プラグインのWP-Banで、中国からのアクセスはブログ自体をアクセス不能にした。
http://hitoriblog.com/?p=27872
http://www.cgis.biz/tools/access/

PHPで簡単にサーバーを監視して一定ラインを超えたらメール通知するコード。

現状では再起動するとすぐに治るのでメールが来るようにしようと思ったが、動いてるのかどうかチェックができてない。
http://weble.org/2012/01/09/php-exec-uptime

さて、これでどうなるか。

画像はドクターグリップのボールペン。かれこれ30年は使っている。替え芯を買ってきた。パイロットは替え芯は基本は長いのと短いの二種類で、これがずっと同じ規格なのでいまでも使えている。これは良い企業姿勢だな。ノック式の新しいのも買ってきた。

にほんブログ村 漫画ブログ 漫画家へ
にほんブログ村←気に入ったら投票してください。

このブログを検索

Translate

リンク

QooQ