|
||||||||||||
| 前のページ 1 2 3 4 次のページ | ||||||||||||
| EJBのクラスタリング | ||||||||||||
|
"weblogic-ejb-jar.xml"でクラスタ化を設定しているEJBをコンパイルすると、EJBHomeインタフェースとEJBObjectインタフェースはレプリカ対応(注)となります。
※注:
レプリカとは、クラスタ内にインスタンス化されているオブジェクトのことです。
レプリカ対応したスタブはルーティングアルゴリズムを指定することにより、ロードバランシングを実現できます。メソッド呼び出しの途中でエラーが発生するとスタブがその例外をハンドリングして、別のレプリカに対して呼び出しを行います。
表5:ロードバランシングの方法
|
||||||||||||
| サーバアフィニティ | ||||||||||||
|
WebLogic Server 8.1からはサーバアフィニティという仕組みが導入されて、上記のロードバランシングと組み合わせて利用することができます。このサーバアフィニティを採用することで、クライアントとサーバインスタンスの間で開かれるIPソケットの数を抑えることができます。アフィニティの動作を以下に解説します。 ![]() 図2:アンフィニティの動作
表6:アンフィニティの動作
|
||||||||||||
| ステートレスセッションBean | ||||||||||||
|
ステートレスセッションBeanは、"weblogic-ejb-jar.xml"にステートが保持されていないことを示すだけで、自動フェールオーバが有効になります。 |
||||||||||||
| ステートフルセッションBean | ||||||||||||
|
ステートフルセッションBeanはHTTPセッションのレプリケーションと同様のレプリケーション方式を採用して、プライマリのBeanインスタンスのステートをセカンダリのBeanインスタンスにレプリケーションします。トランザクションのあるEJBの場合、トランザクションのコミット直後にレプリケーションされます。トランザクションのないEJBの場合、メソッド呼び出しの直後にレプリケーションされます。 J2EE仕様にあるように、ステートフルセッションBeanはトランザクション非対応です。コミット後のレプリケーション前にプライマリで障害が発生すれば、コミット前の状態にフェールオーバされます。 |
||||||||||||
| エンティティBean | ||||||||||||
|
読み込み専用エンティティの場合、レプリカに対応したスタブがホームの呼び出しに返されます。このスタブはロードバランシングを行います。回復可能なエラーが発生した時には、自動的にフェールオーバを行われません。 読み書き用エンティティの場合には、ロードバランシングとフェールオーバはホームのみ行われます。 |
||||||||||||
|
前のページ 1 2 3 4 次のページ |
||||||||||||
|
|
||||||||||||
|
|
||||||||||||
|
||||||||||||
|
|
||||||||||||
|
||||||||||||


