2.13.1 EJBのリモートインタフェースでのローカル呼び出しの最適化

ここでは,EJBのリモートインタフェースでのローカル呼び出しの最適化について説明します。

EJBのリモートインタフェースに定義されるメソッドの呼び出しは,RMI-IIOPで行われますが,この呼び出しについてローカル呼び出し最適化を適用できます。

なお,EJBのローカルインタフェースに定義されるメソッドの呼び出しについては,RMI-IIOPを利用しない,通常のJavaのメソッド呼び出しとなるため,この機能は適用外となります。

リモートインタフェースでのローカル呼び出しの最適化では,ローカル呼び出しを最適化する範囲を選択できます。最適化する範囲は,J2EEサーバのプロパティをカスタマイズして設定します。J2EEサーバの動作設定のカスタマイズについては,「2.13.5 実行環境での設定」を参照してください。

次に,ローカル呼び出し最適化機能の範囲および動作と,J2EEサーバのプロパティ(usrconf.properties)のキーの指定値の対応を次の表に示します。

表2-40 ローカル呼び出し最適化機能の範囲と動作

項目ejbserver.rmi.localinvocation.scopeキーの値
allappnone
ローカル呼び出し最適化の範囲同一J2EEサーバ内となります。同一アプリケーション内となります。範囲はありません。
スレッド構成CallerとCalleeは常に同一スレッドとなります。同一アプリケーション内でだけCallerとCalleeは同一スレッドとなります。CallerとCalleeは常に別スレッドとなります。
クラスローダ構成EJBはコンテナクラスローダ(J2EEサーバ単位)でロードされます。EJBはアプリケーションクラスローダ(アプリケーション単位)でロードされます。
ローカルトランザクションJ2EEサーバ内で利用できます。同一アプリケーション内で利用できます。同一J2EEコンポーネント内で利用できます。
注※
usrconf.propertiesに指定するキーです。