 |

|
Javaアプリケーションサーバのクラスタリング機能比較
|
第4回:JBossのクラスタ設定
著者:サンモアテック 小林 俊哉 2005/11/14
|
|
|
1 2 3 4 次のページ
|
 |
はじめに
|
今回はJBossが提供するEJB/JNDI/JMSの機能について解説します。
|
EJB
|
JBossではEJBに対してもロードバランス/フェイルオーバーが実現可能ですがEJBの種類によって使用可能な機能や設定が異なってきます。
まず、セッションBeanおよびエンティティBeanに対してクラスタリングを設定します。クラスタリングを有効にするには"jboss.xml"の「clustered」要素にtrueを設定します。
「clustered」要素の設定
|
<jboss>
<enterprise-beans>
<entity>
<ejb-name>SampleEB</ejb-name>
<jndi-name>SampleEBBean</jndi-name>
<clustered>true</clustered>
</entity>
<session>
<ejb-name>SampleSFSB</ejb-name>
<jndi-name>SampleSFSBBean</jndi-name>
<clustered>true</clustered>
</session>
(省略)
|
 |
ステートレスセッションBean
|
ステートレスセッションBeanは状態を保持しないため最もシンプルな使用法で、レプリケーションの必要がありません。
ステートレスセッションBeanに対してロードバランス/フェイルオーバーを行う場合、ロードバランスのポリシーは表1に示した3種類から選択できます。
- org.jboss.ha.framework.interfaces.RoundRobin
- ラウンドロビン。アクセスごとにクラスタノードのEJBが順に選ばれ、アクセスされます。
- org.jboss.ha.framework.interfaces.FirstAvailable
- 最初に選んだノードのEJBにアクセスし続けます。
- org.jboss.ha.framework.interfaces.FirstAvailableIdenticalAllProxies
- 最初に選んだノードのEJBにアクセスし続けます。すべてのEJBクライアントが同じクラスタノードのEJBを選びます。
表1:ロードバランスのポリシー
「最初に選ばれるノード」はクラスタノードからランダムに決定されますが、"FirstAvailableIdenticalAllProxies"では最初に選んだノードが選ばれ続けます。
ステートレスセッションBeanのデフォルトポリシーはHomeインターフェースとRemoteインターフェースの両方とも"RoundRobin"です。
ポリシーを変更する場合は"jboss.xml"の「cluster-config」要素に以下のように設定します。
「cluster-config」要素の設定
|
<session>
<ejb-name>SampleSLSB</ejb-name>
<jndi-name>SampleSLSBBean</jndi-name>
<clustered>true</clustered>
<cluster-config>
<home-load-balance-policy>
org.jboss.ha.framework.interfaces. FirstAvailable
</home-load-balance-policy>
<bean-load-balance-policy>
org.jboss.ha.framework.interfaces. FirstAvailable
</bean-load-balance-policy>
</cluster-config>
(省略)
|
 |
1 2 3 4 次のページ
|

|
|

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