商用データベースに匹敵するWebシステム構築手法 5

HTTPセッションの永続性確保

レイヤー7スイッチ機能の実装   HTTPセッションの永続性確保は、ロードバランサに任せるのが一般的です。しかし、スケールアウトが可能な仕様で、Webアプリケーションの機能 の一部として実装することも可能です。PHPの場合、HTTPセッション情報を任意のシステムに保存するしくみを提供しています。こ

大垣 靖男

2005年5月2日 20:00

レイヤー7スイッチ機能の実装

   HTTPセッションの永続性確保は、ロードバランサに任せるのが一般的です。しかし、スケールアウトが可能な仕様で、Webアプリケーションの機能 の一部として実装することも可能です。PHPの場合、HTTPセッション情報を任意のシステムに保存するしくみを提供しています。このしくみを使用すれ ば、複数のWebサーバーにアクセスの分散を行い、システム全体のスケーラビリティを確保しつつ、HTTPセッションの永続性を維持するしくみが簡単に実 装できます。

   商用ロードバランサによるレイヤー7スイッチは、アクセスするWebサーバーを固定化することにより、HTTPセッションの永続性を確保していま す。HTTPセッション情報をデータベースに保存すると、複数のWebサーバーを利用している場合も常に同じセッション情報にアクセスでき、商用のロード バランサでスイッチングするのと同じように永続性を維持することが可能になります(図17)。
データベースを利用したセッション情報管理

図17:データベースを利用したセッション情報管理

   しかし、この構成では、Webシステム全体のパフォーマンスはセッションデータベースサーバーの処理能力の制限を受けてしまいます。

   セッションデータベースサーバーを追加し、特定のセッションIDでWebシステムにアクセスした場合に、同じセッション情報にアクセスできるようにするのは簡単です(図18)。

セッションIDでアクセスするセッションデータベースを変更
図18:セッションIDでアクセスするセッションデータベースを変更

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る