水平スケーリング

Web Balancer

Web Balancer は、各アプリケーションを作り直すのではなく、ノードの追加で拡張するWeb層全体にユーザーをルーティングします。

ファブリックにおける役割

多数の Web Server の前に立つ単一のエントリポイント

同時セッション数が増えれば、Web Server を追加することでアプリケーション層を水平に拡張できます。Web Balancer は、プラットフォームを認識したエントリポイントとして、それらのサーバー間でユーザーをルーティングします。そのため、アプリケーションが独自の分散ロジックを実装する必要はありません。

これにより、単一ノードの導入も大規模なWeb環境も同じ方法で運用できます。処理能力は、各アプリケーションの作り方ではなく、稼働している Web Server の数で決まります。

機能

Web Balancer が提供するもの

プラットフォームを認識したエントリポイント

  • Web Server 間でのセッションルーティング
  • Web層の前に単一のアドレス
  • アプリケーションごとの分散ロジックは不要

ノード単位で拡張する処理能力

  • Web Server の追加で処理能力を増強
  • 数千人規模の同時ユーザー
  • 規模を問わず同じ導入モデル

一貫したセッション

  • Web Manager から共有されるレイアウト
  • 設定はユーザーに追随
  • ルーティングによって表示内容は変わらない

連携

Balancer がサーバーを選び、Manager が状態を渡す

Balancer は、どの Web Server がセッションを処理するかを決定します。Manager は、そのサーバーが適切なアプリケーション状態とユーザー状態を持つことを保証します。両者が連携することで、各 Web Server を個別に管理される環境にすることなく、多数のユーザーをWeb層全体で支えられます。

どちらも組織自身のネットワークアーキテクチャ内で動作するため、アプリケーションを認識したWebスケーリングは、導入ごとではなくプラットフォームとして一度で解決されます。

Web Balancer が複数の Web Server にユーザーをルーティングし、各サーバーが Web Manager から共有状態を取得する様子
ルーティングはエントリポイントで決定し、状態は一か所から供給。

可観測性と管理

Web層の拡張と、環境全体の可視化は別の課題です。

Operations Hub は、デプロイされたアプリケーションとそのインスタンスを一覧化し、稼働状態と利用状況を監視し、バージョンとライセンスを報告します。