先日、急激なアクセス集中によりサーバーをダウンさせてしまいました。
そして次の日、エックスサーバーから恐怖のアクセス制限メールが届きました。ただ今回、どんなにCPU負荷対策を行っても、エックスサーバーが許容できる範囲にまで負荷を減らすことができませんでした。
アクセスを制限されているようでは、サイト収益にも大きく関わります。なので今回、一大決心をしてサーバーをmixhostに移転することにしました。
というわけで以下では、「エックスサーバーからmixhostへ移行を決心するまでの流れ」と、「mixhostに移行した結果」について書きたいと思います。
目次
エックスサーバーからのアクセス制限の経緯
振り返れば2015年の7月、テレビ番組由来の検索流入増加によりアクセス規制を受けました。
前回のアクセス制限
その時は、リアルタイムのアクセスユーザーが1000を超えたあたりでサーバーダウンしました。
これは、テレビで「Google検索の裏技」みたいな番組をやっていて、それを見ていた視聴者が「Google 裏技」と一気に検索したため、その時たまたま上位表示していた以下のページにアクセスが集中しました。
これにより、きつめのアクセス制限を受けた僕は、何とかサイトを正常復帰するため、キャッシュプラグイン使用を含む以下の負荷対策を行いました。
その後も、CPU負荷や転送量に限らず、負荷がなるべくかからないようCDNを利用したり、負荷のかかるプラグインは利用しないなど、なるべく慎重にサイト運営をしてきたつもりです。
今回のアクセス制限
ところが先日、夜中の僕が寝ている間に、また(おそらく)検索由来のアクセス集中が起こりました。
僕がそれに気づいたのは次の日、「エックスサーバーからのアクセス制限メール」です。どうやら以下のサーバー障害は、当サイトが原因のようです。
前回のアクセス制限時にサポートにアドバイスしてもらったCPU負荷軽減は、その後もずっと継続していたのにです。
けれど、指示通りの負荷対策を行っていたとしても、対策以上のアクセスが一気に集中すれば、やはりサーバーは保ちません。
次の日Analyticsを見てみたところ、おそらく前回以上のアクセス集中はあった模様。前回の経験から言ってリアルタイムユーザーは1500以上はあったのではないかと推測されます(おそらく一瞬だけ)。
※寝ていてキャプチャできなかったので画像はあくまでイメージです。
そして、サーバー障害発生から、WEBアクセス制限となる一連の流れです。
負荷対策を促すメールが届く
そして、次の日恐怖のアクセス制限メールが届きます。
なお、この度同様の集中アクセスが発生した場合、
同一収容サーバーをご利用の他のお客様に対する悪影響が懸念されるため、
お客様のサーバーアカウントに対して、以下の制限を設けております。▼サポートにて実施した制限
————————————————————
・同時に実行可能なプロセス数(プログラム数)の制限を強化※当制限下においては、CGI、PHPプログラムへのアクセスが集中した際に
リソース制限エラー(500エラー)が発生しやすくなります。・静的ファイルを含めたすべてのファイルに対する同時接続制限を実施
※同時接続制限とは、HTMLファイルや画像ファイル、プログラムなど、
お客様のサーバーアカウントに設置されたすべてのファイルに対する
同時に接続可能な件数の制限です。当制限下においては、集中アクセスが発生した場合などに、
以後のアクセスができなくなるとともに「503エラー」が発生します。
————————————————————
そして、メールにはこう続きます。
こちらの制限は、下記「突発的な集中アクセスへの対策について」をご参考のうえ、集中アクセスへの対策をなさり、その詳細をサポートまでご連絡いただくことで、段階的な緩和、もしくは制限そのものの解除を検討・実施いたします。
というか、僕は前回のアクセス制限で、出来る限りの「CPU負荷対策」+「転送量対策」を行っています。
エックスサーバーから提案のあった負荷対策はすべて対応済み
僕が行った(既に行っていた)、負荷対策施策を具体的に書くと以下。
- WordPressにページキャッシュプラグイン適用済み
- アクセスのたびにプログラムを実行するプラグインの停止(WordPress Popular Posts等)
- CDNサービスの利用(Cloudflareの利用)
- PHP高速化設定(FastCGI)適用済み
- PHP7の適用(PHP5に比べ2倍以上の実行速度でメモリ使用量が大幅に改善された最新バージョン)
これだけの対策を行って、負荷調査で3日間モニタリングしていただいて返ってきた答えが以下。
現状の負荷状況を確認いたしましたが問題は改善されておらず、現在も非常に高い負荷が発生しております。
恐れ入りますが、改めて負荷軽減のための対策をご検討くださいますでしょうか。
軽く目眩がしました。
でもこうなるのは、しょうがないというのもあります。前回のアクセス制限以降、普段のサイトへのアクセス数も増えているということも原因にあるのでしょう。
正直、これ以上の「負荷軽減対策を検討」をと言われても、僕にはもうどうしてよいか思いつきませんでした。
最終兵器としてはエックスサーバーの新サーバーに移転も
その他に、エックスサーバーから提案のあった対応策としては、「スペックが増強された新サーバーに自前で移行する」というのしか残っていませんでした。
エックスサーバーの新サーバーに移転することにより、以下のようなスペック増加はあります。
- 最新CPUへの変更によるCPU性能の大幅な向上
- 最新I/Oデバイスへの変更によるI/O性能の大幅な向上
- 最大12倍(16GB→192GB)となる搭載メモリの大幅増強
- カーネルやファイルシステムなどの基盤システムの高速化 など
これはこれでかなり魅力的です。これだったら当サイトの問題も解決できるかもしれません。
しかし、サポートメールのサーバー移転に関する記述には、以下のようにも書かれていました(強調は僕が編集)。
最新のサーバー環境を有する共有サーバーへ移転していただくと、
負荷量に関して、現在よりも余裕を持った運用が可能でございます。※最新環境を有する共有サーバーへ移転を行っても、高い負荷により制限目安値の超過や、収容する共有サーバー全体へ多大な影響が生じる場合は、制限強化などを設ける可能性はございます。
負荷軽減の対策を講じても改善しない場合は、最新のサーバー環境への移転もご検討ください。
なお、サーバー移転について追加の費用はございませんが、移転作業はお客様ご自身で行っていただく必要がございます。
確かにこの提案は魅力的でスペック増強により、現状を改善出来る可能性は十分あると思います。
けれども、エックスサーバーの新サーバー移行には以下の問題点が。
- 手軽に移行出来る「新サーバー簡単移行」の対応サーバーではない
- サーバー移行は全て自前で行う必要がある
- 新サーバーに移行しても高い負荷が発生したらアクセス制限を受ける可能性は残っている
サーバーの手動移転となれば、やはり結構面倒くさいですし、必ずしもアクセス制限が解除されるという保証もありません。
僕はこの後数時間、今後の対応を熟考することになります。
新天地のmixhostに移転することを決意
熟考の結果、僕の能力で出来そうな対策は、以下のどちらかしかありませんでした(AWSとか使ったことないし)。
- 制限が解除されるかは不明だけどXSERVERの新サーバーに移転する
- 高性能で当サイトのアクセス程度ではビクともしない他のレンタルサーバに移転する
この二者択一を真剣に考えた結果、「今後アクセス制限の不安を抱えながら恐る恐るサイト運営をするのは嫌だ」という思いが強くなりました。
同じサーバ移転の手間がかかるのであれば、「確実に大丈夫なスペックを保有するサーバーに移って、さらに負荷がかかるようなら上位プランがきちんと設定されているサーバーに移転したい」という結論に至りました。
新天地となる移転先のサーバーは、前々から「破格の高性能サーバー」で気になっていたmixhostしか考えていませんでした。
もう、mixhostの公式サイトを見ても、その「コストに対する性能のハンパなさ」しか伝わってこないんですよね。
mixhostの説明を読んだら、他のサーバーは、全く選択肢に入れようとも思いませんでした。
僕自身もエックスサーバーは、今も素晴らしいサーバーと思っています。実際に以前、以下のような記事も書いています。
僕は、これを書いた時点の経験で、「(日本では)エックスサーバー以上にコスパに優れたサーバはない」と思っていました。けれど、mixhostを知り、実際に使ってみた結果、その性能は僕の想像の遥か上を突っ走ってました。
mixhostに移転した結果
性能を実際に体験した結果から言うと、移転して大成功だったと思います。
良かったことが多すぎるので、負荷対策のことに絞って言えば、以下のような恩恵を受けることができました。
- 想像以上の性能のよさでサーバーの表示が滅茶苦茶早い
- 今のところ繁忙時間帯でも快適にサクサク動作
まあとにかく、「サーバーを安定的に高速表示するぞ!」という意思が感じられるほど、日本のレンタルサーバーでは、頭一つ飛び抜けている存在だと思います。
mixhostに移転した感想は、以下も詳しく書いています。
非常に安定した高速サーバー
実際に、どれくらい高速になったかは、以下の「サーバーの平均応答時間(秒)の推移」を見てもらえれば、ある程度分かると思います。
それまで、「サーバーの平均応答時間」が0.36秒平均だったものが、サーバ移転以降(ネームサーバが反映されてから)は0.12秒平均になっています。
単純計算で申しわけないのですが、以前のエックスサーバー環境よりmixhost環境の方が3倍の効果が出ています。もちろん高速化設定は、以前と同等のものを用いた計測です。
サーバーがユーザーリクエストに応答するまでの時間。ただ、ユーザーの所在地からサイトのサーバーにアクセスするネットワークの通信時間も含まれるため、純粋な出力処理時間ではありませんが、ある程度の目安になると思います。
mixhostのプランは、プレミアムです。CPUは仮想3コア(当時)、メモリも2GB(当時)で、保存領域も完全SSD。しかもLiteSpeedサーバーを採用しているのであれば、このぐらいの差は出て当然なのかもしれません。
現在サーバー増強によりスペックはさらに上がっています。
繁忙時間帯でも快適に動作
mixhostのコントロールパネル(cPanel)では、自分のサーバーの稼働状態を「統計」項目から見ることができます。
以下は、当サイトの繁忙時間帯の統計情報です。
これを見ても「CPU使用量」は3%ですし、「メモリの使用量」も4%と、かなりの余裕があることがわかります。
エックスサーバーには、こういった機能は無く、サイトの接続状況などで繋がり具合を見るしかありませんでした。
こういった、統計情報のような数値で、客観的にサーバーの運営状態を把握できるようになったのは嬉しいです。
アクセスが集中したときは
それにmixhostの場合、急激なアクセス集中によりCPU負荷が高まったときなどは、スムーズに上位プランに移行することができます。
そしてありがたいのは、アクセス集中が収まってきたら下位プランにダウングレードすることも可能です。
アップグレード / ダウングレードは支払い確認後に即時に反映されます。
エックスサーバーなども、下位プランに戻そうと思えば戻せるのですが、「契約の利用期限」が来ないと、変更できません。
ここまで、フレキシブルにアクセスに合わせて対応できるというのは、いざというときのために非常に心強いです。
mixhostサーバー移転の目安
ちなみに、mixhostへサーバー移転をするときに、「プランを選択する上でのPVの目安」をサポートの方に質問してみたところ以下のような回答をいただきました。
- スタンダード:100万PV/月
- プレミアム:200万PV/月
- ビジネス:400万PV/月
- ビジネスプラス:800万PV/月
- エンタープライズ:1600万PV/月
ちなみに、これはあくまで目安なので、キャッシュを有効にして転送量削減対策などをすることにより、さらに多くのPVに対応することができます。
中には、ビジネスプラスで1200万PVのサイトを運営している方もおられるそうです。
また、こんなこともおっしゃっておられました。
他のレンタルサーバー会社様とは違い、割り当てられたリソース内でのご利用の場合は、転送量が極端に多すぎない限りは利用を制限させていただく事もございませんので、安心してご利用いただけるかと存じます。
神サーバー?サイト運営者にとって、これほどありがたいこともないです。
一応、サーバー移転方法は以下。
そして、mixhostにはなんと「格安のWordPress移転代行サービス」まであります。
サーバー移転って、初めてやる場合は結構な恐怖なんですよね。「移行途中に何かしでかしてしまうんじゃないか?」といった感じで。それに、データベースサイズが大きいと通常の移行方法では、インポートできなかったりトラブルも結構多いです。
その場合に、「サーバー移転代行サービス」があるということは、とても心強いです。しかも格安で。どこまで至れり尽くせりなんだろうか。
かくいう僕も、失敗するのが怖いのと面倒くさいのとで、移転代行サービスにお願いしたクチです。いやー、ビックリするほど楽でした。
参考 WordPress移転代行サービス | mixhost (ミックスホスト)
まとめ
そんなわけで、mixhostにサーバー移転して10日ほどになりました。今のところ全くといっていいほど不満はないです。
それよりも、良いことがありすぎて、ちょっと今回の記事だけでは書ききれませんでした。詳しくは、以下に書かれています(長文)。
これまで以前の環境では、まぐれで記事がバズったときなどは「ああっ!アクセス制限がかかるから、そのぐらいで収まって…」とか「転送量が大幅にオーバーしてしまった…アクセス制限メールが来ないだろうか…」と常にビクビクして運営をしていました。
それが、これからはアクセス制限に怯えて運営する心配は、ほぼなくなりました。
結果的に言えば今回、原因不明の急激なアクセス集中(一瞬だけ)により、アクセス制限を受けたことは、逆にありがたかったような気さえしています。
なにせ、サーバー移転をする決心をすることができて、しかも最高のレンタルサーバーに移転出来たのですから。
というわけで「アクセスが結構あって、いつもカツカツでサイト運営している」とか「またサーバーからアクセス規制通知が来た。もう何度目だ!」なんて場合は、mixhostをサーバー移転候補の一つに加えても、損はないと思います。
サイト mixhostに無料体験登録する
移転お疲れ様です!!
すこし前からMixhostになっているのは気づいていましたがついに記事が!!
やっぱりアクセスが多かったのですね…
人気ブログはつらいですね 笑
サーバーについて
SSD良いですね!!
SSD高いんだよな~
WAFはModSecurityなんですね
入れたいけどWordPressが引っかかるらしいです
データベースはmariadbですか!!
今サーバーを確認してみたら結構前のバージョンだった…
どうしようかなぁ~
PHPも7にしたい
ただ怖い 泣 笑
サーバーの仕様を見るのおもしろいなぁ~
SSLになっているのでリンクを修正してきます
(リダイレクトがあるとリンクチェッカーに怒られるので…)
お疲れ様でした!!
※このコメントおかしい 笑