
議論を簡単にするために、ここで言う「クラウド プラットフォーム」とは、Google Cloud または Amazon WS を指すものと仮定します。
現在、私は主に HTTP リクエストを処理する Web サーバーを持っています。ただし、リアルタイム機能 (ライブ チャットやビデオ ストリーミングなど) もあり、それらの機能は別のサーバーでソケット ベースの接続を介して処理されます。
明確に言えば、実際のケースはもう少し複雑です。「HTTP サーバー」と「ソケット サーバー」は、実際には両方とも複数のサーバーで構成されています。
現在、インフラストラクチャは、これらの HTTP サーバーに送信されるすべての HTTP 要求がロード バランサーを経由して同じ IP アドレスを共有するようになっているものと想定されています。
ソケットベースの接続では、HTTP リクエストよりも受信するリクエストの強度がはるかに高くなると想定されます。
ここで問題が発生します。すべてのサーバーにクラウド プラットフォームを使用していると仮定すると、ソケット ベースの接続が同じロード バランサーを通過する必要があるのか、それとも別のロード バランサーを使用する必要があるのかがわかりません。
一方で、ロード バランサーを 1 つ使用するとコストが削減されることは明らかです (パブリック IP アドレスを 1 つだけ購入すればよいため)。また、私が知る限り、クラウド プラットフォームが提供するロード バランサーの仕様はかなり優れています。ただし、調査によると、多くの企業は異なるロード バランサーを使用するだけでなく、ソケット ベースの接続にのみクラウド サービスが提供するロード バランサーを使用するのではなく、独自のソフトウェアを使用してロード バランシングを行っています。この問題について決定を下すためにどのような側面を考慮する必要があるのか、よくわかりません。
答え1
負荷分散の側面
Google Cloud の実装に最適なロードバランサを決定するには、Cloud Load Balancing の次の側面を考慮してください。
外部負荷分散と内部負荷分散
グローバル負荷分散と地域負荷分散
プレミアムと標準のネットワーク サービス ティア
プロキシとパススルー負荷分散
トラフィックの種類
DDoS 保護
実装に最適なロード バランサーを選択するには、次のリファレンスをお勧めします。