注意点
注意点
JBossでクラスタリングを行う場合の注意点をあげます。
本当にレプリケーションは必要か
レプリケーションはシステムの可用性を向上するものですが、アプリケーションの作りによってはセッション情報が途中で失われても問題がない場合もあるでしょう。レプリケーションによるパフォーマンス劣化と天秤にかけて、採用を決定すべきです。セッションレプリケーション抜きの単純な「ロードバラン ス+スティッキーセッション」であれば、クラスタ台数に応じたリニアなパフォーマンス向上を期待できます。
何をクラスタリングするか
Webアプリケーションにおいて、Web層を入り口にしてステートレスセッションBeanでビジネスロジックを行うアーキテクチャの場合は、 HTTPセッションレプリケーションだけで十分でしょう。EJBのクラスタリングはリモートクライアントがEJBアクセスする際に必要になってきます。
all-to-all
JBossのレプリケーションは第2回で解説したTomcatと同様に"all-to-all"方式です。そのためクラスタのノード数が多くなるとレプリケーションによるオーバーヘッドが増大します。この問題に関してJBossは将来的に"sub-partition"をサポートし、これらのオーバーヘッドを削減することを計画しています。
JBossのバージョン
JBossはメンテナンスバージョン(x.x.xの最下位桁)のバージョンアップでも、しばしば設定のデフォルト値が変わります。例えば"tc5-cluster-service.xml"のCacheModeは、JBoss 4.0.2から「REPL_SYNC → REPL_ASYNC」に変わりました。新しいバージョンを試す場合には、リリースノートも重要ですが各設定ファイルにざっと目を通すことをお勧めしま す。
最後に
JBossはバージョン3以降、エンタープライズ環境での採用を意識して商用製品レベルの機能をどんどん取り込んでいます。現在JBossはPOJO/アスペクトベースのアプリケーションサーバを目指して新バージョンの開発を進めていますが、クラスタリング機能の設定の容易さや、パフォーマンスの向上なども期待したいところです。
次回は商用J2EEサーバの代表として、WebLogicのクラスタリングを見ていきます。
関連記事
タスクとコードをつなげるMylyn
2007年9月25日 20:00
「Samba 4.1.22/4.2.7/4.3.3」リリース
2015年12月24日 1:23
rubyonrails.org、「Rails 4.2.5.2/4.1.14.2/3.2.22.2」をリリース
2016年3月3日 0:50
Apple、プログラミング言語「Swift 2.2」を発表
2016年3月27日 3:09
「PHP 7.0.7/5.6.22/5.5.36」リリース
2016年6月1日 14:16
ミラクル・リナックス、「MIRACLE ZBX 2.2」をRed Hat Enterprise Linux 7に対応
2014年10月24日 2:00
バックナンバー
この記事の筆者
株式会社サンモアテック 技術開発事業部
2001年入社。NOMAD(4GL言語)開発にはじまり、Webサービス、グリッドなどの新技術検証、またJBossやTomcatを含むオープンソース製品のサポートに従事。
筆者の人気記事
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。