#webサーバーに対する負荷分散とは
webサーバーが複数ある場合、1つのサーバーに負荷が集中しないように分散させる仕組みのことである。
(負荷分散や故障などに備えてwebサイトでは複数のwebサーバーを使用していることが多い。)
また、負荷を分散させることをロードバランスやロードバランシングと呼ぶことが多い。
#DNSラウンドロビン
1つのドメインに対して複数のIPアドレスを割り当てることにより、各IPアドレスに対して順番に処理していく負荷分散技術。
(ラウンドロビンとは「何かの役割・出番をたくさんの物事・人員で交替しあう」という意味である。)
##処理方法
例えばwebサーバーがA,B,Cの3台あるとすると、ドメインに対するアクセスをA⇨B⇨C⇨A⇨B⇨Cのように順番に処理をしていく。
##メリット
- 手軽さ
DNSサーバのゾーンファイルで設定することができるためコストが低い。
###ゾーンファイルとは
DNSの設定ファイルの一つであり、ネームサーバの管理する範囲をゾーンと呼ぶ。
ゾーンファイルの管理情報を変更することでDNSラウンドロビンの設定を行うことができる。
##デメリット
- 効率性
Aサーバーの負荷が高く、Bサーバーの負荷が低い場合でも同じようにA⇨B⇨Cと順番に処理を行っていくことになるため、必ずしも効率が良いとは言えない。 - 障害への対応
Cサーバーが故障していたとしてもそれを検知することはできず、A⇨B⇨Cと順番に処理を行ってしまう。 - 継続性
同じクライアントからの接続を同じサーバーに継続したいと思ってもやはりA⇨B⇨Cと処理を行うため、継続して同じサーバーを使用させるということができない。
#ロードバランサ
ロードバランスをするための装置であり、負荷分散装置などと呼ばれる。
DNSラウンドロビンは負荷分散技術であるが、ロードバランサは負荷分散装置。
概要としては同じようにシステムにかかる負荷を複数のサーバーに分散させることにより、処理のバランスをとることができることである。
##メリット
DNSラウンドロビンのデメリットがロードバランサーだとできるところ。
A⇨B⇨Cと順番に処理をするのではなく、サーバーの中で一番負荷の少ないサーバーへ処理をしてくれる。
また、Webサーバが正常に稼働しているか否かを常にチェックしているため、障害のあるサーバーへ処理を割り振ることもない。
##デメリット
- コストが高い
「ロードバランサー 価格」で検索し、最初に出てくるページを見てみると、安いもので70万円・高いもので何百万円・・・