WAS 小ワザ集

第13回:HttpSessionに格納されているオブジェクトを調査する

Comments

コンテンツシリーズ

このコンテンツは全#シリーズのパート#です: WAS 小ワザ集

このシリーズの続きに乞うご期待。

このコンテンツはシリーズの一部分です:WAS 小ワザ集

このシリーズの続きに乞うご期待。

単一のアプリケーションサーバーで動かしていたアプリケーションをクラスタ環境へ移行するときに、HttpSessionの使用の仕方が問題になることがあります。HttpSessionには、サーブレット仕様でSerializableなオブジェクトしか格納してはいけないことになっています。またパフォーマンスの観点から、HttpSessionに格納するオブジェクトのサイズはなるべく小さいことが望ましいとされています。

これらの規則を守っていなくても、アプリケーションが単一のサーバーで動いている場合には、ほとんど問題が表面化しません。アプリケーションをクラスタ環境で動かしたときに初めて発覚することが大部分です。

アプリケーションがHttpSessionをどのように使用しているかを外部から調査することは困難です。アプリケーション自身に使用方法のレポート機能をつけることが一番確実です。

このJSPファイルは、アクセスした時点でのHttpSessionの基本情報や、格納されているオブジェクトの詳細な情報を表示するツールです。格納されているオブジェクトがSerializableかどうか、Seiralizeしたときのサイズは何バイトになるかを表示することができます。また、Serializableでないオブジェクトが格納されている場合には、その詳細についてもレポートします。

このツールを使用するには、JSPファイルをアプリケーションの一部としてWARファイルに組み込みます。そしてURLを指定してブラウザからアクセスします。HttpSessionはスコープがアプリケーション単位に限定されていますので、調査対象と同じアプリケーションに組み込みます。

また、このツールを外部からアクセスすると、サーバー内部の情報が不用意に公開されてしまいます。開発環境やテスト局面でのみ使用し、本番の実行環境からは除去して下さい。

JSPファイル:WAS V6.1/7.0/8.0/8.5で使用できます。


ダウンロード可能なリソース


関連トピック


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=WebSphere
ArticleID=789761
ArticleTitle=WAS 小ワザ集: 第13回:HttpSessionに格納されているオブジェクトを調査する
publish-date=02212013