- ベストアンサー
WebサーバとDBを何故たすきがけ構成にするのか
Webシステムのサーバ構成が、2台構成で各サーバを仮想化してWebサーバとDBサーバが構成されています。 サーバA:Webサーバ1、DBサーバ1 サーバB:Webサーバ2、DBサーバ2 のような感じです。 これで、Webサーバ1がDBサーバ2を見て、Webサーバ2がDBサーバ2を見る構成となっています。 たすき掛け上の構成にしなくてはいけない理由は何でしょうか? 不勉強で申し訳ないのですが、どなたか理由を教えていただけると助かります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
Webサーバー1 - DBサーバー2の組(仮にシステムα)と、Webサーバー2 - DBサーバー1の組(同β)が違うシステムと仮定すると、単なる負荷分散(リソース分散/最適化?)に見えます。 システムαが高負荷になったと仮定して、各サーバーのリソース(CPU,メモリ)の配分は、おおまかに以下のようになるということでしょう。 サーバーA: Webサーバー1 = 80%, DBサーバー1 = 20% サーバーB: Webサーバー2 = 20%, DBサーバー2 = 80% (もちろん、WebとDBとではリソースの使い方が違いますが、ひとまず除外してます。) もし単体サーバーで、Web+DBを構築した場合、上記と同じ負荷の作業を同じパフォーマンスで実行させたい場合、160%のリソースが必要になりますし、もう片方は、暇を持て余す状態になります。 ただ、ネットワーク構成をちゃんとしておかないと、サーバーA - B間のネットワークが分断されてしまうと共倒れする危険性がありますし、アプリケーション作成側としても、Web - DB間の通信を極力抑えるなど対策をとらないで導入した場合、A - B間のネットワークがパンクすることも考えられます。 また、両方のシステムがほぼ同時に高負荷になるなら、意味がない構成かもしれません。 なんて、素人考えです。
その他の回答 (2)
- pakuti
- ベストアンサー率50% (317/631)
たすきがけで 1) Webサーバーの正 DBサーバーの副 2) Webサーバーの副 DBサーバーの正 HAソフトで冗長構成を取り 障害時に縮退運転をするのは良くある方式です。 当初の構成であれば、やる必要は無いでしょう。
お礼
お礼が遅くなり失礼いたしました。 ご回答ありがとうございました。
- pakuti
- ベストアンサー率50% (317/631)
考え方次第なのでですが、私はこの構成はNGです 障害時、本来であれば単体障害で済むものが両方こける事になります 別の方が書かれているような場合、スペックを上げれば済むかと またネットワークに流す事による、遅延の発生も気になります。 構築した人になぜそうするのか?と聞いてみてはいかがでしょう。 たぶん、その人なりの考え方があるのでしょう
お礼
ご回答ありがとうございます。 構築者に聞いてみたところ、最初は片系をスレイブとして使用しサーバーA: Webサーバー1、サーバーB: DBサーバー2を利用して、利用ユーザーが増えたら両方使うという方針にするから、今は大丈夫と…。
お礼
ありがとうございました!! 同一筐体にのせたWebサーバとDBサーバをつないだ方が要領良いのではないか等と、悩んでいたのでとても参考になりました。