更新日:2023年8月15日
うまさくロト予想の方のサイトの
アクセスが増えてきたことで
閲覧しにくい時間などが出来たので
サーバーの負荷対策を行いました。
1日の平均利用者:
10,000人
1ヶ月の閲覧ページ数;
約190万ページ数(PV)
1日のうまさくセレクトのリクエスト数平均:
134,000件
※ボタンを押した回数
うまさくセレクトのボタン回数が
やはり増えており
特にロト6の抽選日の昼、抽選時間直前には
エラーが出たりもしていました。
サーバーのリソース状況
最近の1週間のサーバーの
CPUとDISKの負荷状況を見てみます。
CPU TIMEが負荷の高い時間帯に
一気に上がっているのがわかります。
また、DISKのI/Oも高い時があります。
調べてみると、メモリ使用量が増えて
SWAPが発生していることもわかりました。
HTTPのチューニングを試みましたが改善せず..
改善策を考える
これまでは、WEBサーバーを1台で構成していました。
さくらVPSの
4Gから始まり8G..16Gとスケールアップして
現在は16Gのサービスをしています。
スケールアップして
32Gにするか?
それとも、8Gを2台借りて、分散するか?
悩みました。
ただ、32Gにスケールアップすると
次がもうありません。
今の構成をクラウドにするとVPSの1.5〜2倍ぐらいの費用になりそうです。
8Gを2台借りて
負荷分散する方法です。
さらにアクセスが増えた時も
同じスペックのサーバーを追加することが出来ます。
負荷分散の構成
新しく8GのVPSを2台借りて
環境を構築しました。
以下のようにしました。
OS | Rocky 9(CentOS 8) |
HTTP | Apache 2.x.x(同じ) |
PHP | Ver 8.x.x ででphp-fpmモード(Ver 7.2.34) |
( )は前回の環境
そして、負荷分散は
さくらのGSLB(広域負荷分散)にしました。
エンハンスドLBも実験したのですが
帯域制限がなく、シンプルなGSLBを採用しました。
対応後のリソース状況
対応後の2台のリソース状況も調べてみました。
WEB1のリソース状況
DISK I/Oが上がっている時間は
バックアップ処理を動かしたからです。
WEB2のリソース状況
以前のサーバーと比較すると
CPUの負荷も分散出来ていると思います。
そして、体感速度もかなり向上しました。
とりあえずの目的は達成できたのではないかと思います。
ただ、アクセスが更に増えていけば
うまさくセレクトのリクエスト数も増えていくので
様子を見ながら対応していきます。
サポート支援金の使い道
うまさくのサービスをより充実させるために
サポート支援を受け付けています。
いただいた支援金は以下の用途に活用させていただきます。
サーバー増強・運用コストの補填
新しいデータ分析機能の開発
さらなるサービス向上のための運営費用
今後さらに分析ページや予測機能を強化していきますが
「もっと精度の高い分析を追加してほしい」
「新しい機能を開発してほしい」
といったご要望をサポート支援を通じて
後押ししていただけると、大変助かります!
サポート金額:100円から5万円までお選びいただけます。
※ご支援は「月額(サブスクリプション)」ではなく
一度きりのご決済となります。
YouTubeのスーパーチャット(Super Chat)を通じた
ご支援も受け付けております!
皆さまの応援が
うまさくの成長につながります!
今後のさらなる進化のために、ご支援いただけると幸いです。
うまさくセレクト