基本的なWebシステムの高性能化手法
前回に引き続き、Webシステムの高性能化手法について解説していきます。今回はアクセス分散について説明します。
アクセス分散の基礎知識
スケールアウトにアクセスの分散は欠かせません。アクセスを分散するためには、 レイヤーを利用します。レイヤー3スイッチと呼ばれるタイプのアクセス分散は、IPレベル(レイヤー3)でアクセスを分散します。これに加えてWebシス テムでのアクセス分散では、CookieやURLに埋め込まれたセッションIDによってスイッチングを行うレイヤー7スイッチが利用されます(図7)。ま た、レイヤー3、レイヤー7以外にDNSを利用した負荷分散も一般的に行われています。

図7:OSI参照モデルとWebのアクセス分散
アクセス分散で重要な注意点は、HTTPセッション管理が必要なWebシステムで単純にアクセスを分散した場合、HTTPセッションを維持できなく なる場合があるということです。Webシステムでは接続の永続性維持が必須になります。レイヤー7スイッチの必要性と実装は第5回で詳しく解説します。
![]()
リバースプロキシ
Webプロキシはもともとキャッシュ可能なデータをプロキシサーバーでキャッシュし、組織内の Webクライアントのインターネットアクセスを高速化することを目的に開発されました。もともとのプロキシの利用方法とは、反対(リバース)に、Web サーバー側のアクセラレータとして利用するWebプロキシをリバースプロキシといいます(図A)。

図A:プロキシとリバースプロキシ
最近のWebサーバーはデータベースとアプリケーションを使い、動的なコンテンツをオンデマンドで作成することが一般的になりました。動的コンテン ツの作成は静的コンテンツを送信するより何倍も(場合によっては何百倍も)の処理時間が必要となることも珍しくありません。この負荷を少しでも軽くするた め、静的なコンテンツのリクエストをリバースプロキシに代理応答させます。