最近、め組ことデジタルキューブさんと、一緒に仕事をやらせてもらってます。
今の所は、主に WordPress サイトの高速化とかやってるんですけど、その中で WordPress サイトを複数台のサーバで負荷分散させて高速化させる案件があったので、その時の作業内容をシェア。
最近はさくらの VPS とか、低価格の VPS が出てきてるので、個人でも手を出せる領域かもしれませんね。
今回は2台のサーバを使って PHP の処理を負荷分散しました。
構成は、こんな感じです。
- プライマリサーバ ( vps1.example.com : 192.168.0.1 )
- Nginx, Load Balancer、PHP FastCGI のアプリケーションサーバ
- lsyncd (リアルタイム rsync を実現するためのサービス)
- セカンダリサーバ ( vps2.example.com : 192.168.0.2 )
- Nginx, PHP FastCGI のアプリケーションサーバ
- MySQL
- rsyncd
※ 説明のため IP アドレスはローカルアドレスに設定していますが、実際にはグローバルアドレスを使用しています。
ブラウザからの要求は、すべてプライマリサーバ ( vps1.example.com ) が受け取り、PHP の処理を二台のサーバに分散させます。
もちろん、処理が重くなってきたら、3台目、4台目… と追加していくことが可能です。
続きを読む