Javaアプリケーションサーバのクラスタリング機能比較 3

JBossのクラスタ設定

はじめに今回はJBossが提供するEJB/JNDI/JMSの機能について解説します。 EJBJBossではEJBに対してもロードバランス/フェイルオーバーが実現可能ですがEJBの種類によって使用可能な機能や設定が異なってきます。

小林 俊哉

2005年11月14日 20:00

はじめに

今回はJBossが提供するEJB/JNDI/JMSの機能について解説します。


 

EJB

JBossではEJBに対してもロードバランス/フェイルオーバーが実現可能ですがEJBの種類によって使用可能な機能や設定が異なってきます。

まず、セッションBeanおよびエンティティBeanに対してクラスタリングを設定します。クラスタリングを有効にするには"jboss.xml"の「clustered」要素にtrueを設定します。

「clustered」要素の設定


     
          
               SampleEB
               SampleEBBean
               true
          

          
               SampleSFSB
               SampleSFSBBean
               true
          

          (省略)

 

ステートレスセッション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」要素の設定


     SampleSLSB
     SampleSLSBBean
     true
     
          
               org.jboss.ha.framework.interfaces. FirstAvailable
          

          
               org.jboss.ha.framework.interfaces. FirstAvailable
          

     

(省略)

 

 

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

人気記事トップ10

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