TOP比較データ> はじめに
Javaアプリケーションサーバのクラスタリング機能比較
Javaアプリケーションサーバのクラスタリング機能比較

第9回:JBossクラスタのチューニング
著者:サンモアテック  小林 俊哉   2005/12/21
1   2  3  次のページ
はじめに

   当連載の第7回「Javaアプリケーションサーバのパフォーマンス比較」ではサンプルアプリケーションを用意して、HTTPセッションレプリケーションの性能をTomcat/JBoss/WebLogicの各プラットフォームで比較しました。

  JBossが性能面で劣る結果となってしまいましたが、今回は番外編としてJBossにチューニングを施し、どこまで性能を伸ばせるかをみていきます。

   テスト環境、アプリケーションについては第7回と同じです。


モジュールの最新化

   JBossのクラスタリングの鍵になるモジュールは、分散キャッシュを実現するJBossCacheと通信基盤であるJGroupsです。今回テスト対象としているJBoss 4.0.3SP1が持つ各モジュールのバージョンはJBossCacheが1.2.3.1、JGroupsが2.2.7です。まずはこれらのモジュールの最新バージョン(2005年12月現在)を利用しましょう。

   緊密に統合されたソフトウェアであればモジュールのJARファイルを差し替えるなどということは不可能、あるいは推奨されないケースが多いのですが、JBossは各モジュールの疎結合を意識して開発されているため依存性の問題はありません(JBossCache 1.2.4はJGroupsに対してのみ依存性があり、JGroups 2.2.7と2.2.8に対応しています)。


JBossCacheの差し替え

   まずは、JBossCache 1.2.4のファイルを取得します。以下のURLからjboss-cache-minimal-dist.zipをダウンロードし、アーカイブを展開してください。

JBoss.com - JBoss Cache Downloads
http://www.jboss.org/products/jbosscache/downloads

   libディレクトリの下にあるjboss-cache.jarが目的のJARファイルです。このJARファイルを"JBossインストールディレクトリ/server/all/lib/jboss-cache.jar"と差し替えてください。


JGroupsの差し替え

   JGroups 2.2.8のファイルを取得します。以下のURLからJGroups-2.2.8.bin.zipをダウンロードし、アーカイブを展開してください(現在の最新バージョンは2.2.9ですが、JBossCache 1.2.4の対応バージョンがJGroups 2.2.8までなので、今回は2.2.8を使用します)。

JGroups - The JGroups Project
http://www.jgroups.org/javagroupsnew/docs/index.html

   展開ディレクトリの下にあるjgroups-all.jarが目的のJARファイルです。このファイルを"JBossインストールディレクトリ/server/all/lib/jgroups.jar"と差し替えてください(名前はjgroups.jarに変更しておくとよいでしょう)。


モジュールの最新化後のテストの結果

   JARファイルの変更後、JBossを起動して再度テストを行いました。結果は以下の通りです。

JAR更新、1KB、レスポンスタイム
図1:JAR更新、1KB、レスポンスタイム

JAR更新、1KB、スループット
図2:JAR更新、1KB、スループット

JAR更新、100KB、レスポンスタイム
図3:JAR更新、100KB、レスポンスタイム

JAR更新、100KB、スループット
図4:JAR更新、100KB、スループット

   大幅な改善が得られました。セッションオブジェクトのサイズが1KBの場合にはTomcatに迫る性能を見せており、100ユーザまではレプリケーションによる影響を感じさせません。一方セッションオブジェクトのサイズが100KBの場合には幾分効果があるものの、まだまだTomcatにはおよびません。

1   2  3  次のページ


株式会社サンモアテック 小林 俊哉
著者プロフィール
株式会社サンモアテック  小林 俊哉
株式会社サンモアテック 技術開発事業部
2001年入社。NOMAD(4GL言語)開発にはじまり、Webサービス、グリッドなどの新技術検証、またJBossやTomcatを含むオープンソース製品のサポートに従事。


INDEX
第9回:JBossクラスタのチューニング
はじめに
  バッファのチューニング
  TCPスタック