WebLogic 8.1.6 で実行キュー (= スレッド プール) からスレッドを取得/使用/返すにはどうすればよいですか?
1 に答える
私の知る限り、いいえ、これは不可能です。スレッドを直接取得することはできません。代わりに、サーブレット、JSP、EJB、または RMI オブジェクトに実行キューを割り当てます。
Weblogic では、サーブレット、JSP、EJB、および RMI オブジェクトに実行キューを割り当てることができます。実行キューをサーブレット (または JSP) に関連付けるに は、記述子ファイル
wl-dispatch-policy
でサーブレット (または JSP) の初期化パラメーターを指定する必要があります。次のコード サンプルは、実行キューを JSP ページweb.xml
に割り当てる方法を示してい ます。mySpecialQueue
<!-- web.xml entry --> <servlet> <servlet-name>MyServlet</servlet-name> <jsp-file>/critical.jsp</jsp-file> <init-param> <param-name>wl-dispatch-policy</param-name> <param-value>mySpecialQueue</param-value> </init-param> </servlet>
実行キューを RMI オブジェクトに割り当てるには、Weblogic の RMI コンパイラ (rmic) を使用するときに -dispatchPolicy オプションを指定する必要があります。実行キュー
mySpecialQueue
を RMI オブジェクトに割り当てる方法は次のとおりです。java weblogic.rmic -dispatchPolicy mySpecialQueue ... In the same way, use the `-dispatchPolicy` option when invoking
実行キューを EJB に割り当てる Weblogic の EJB コンパイラ。Weblogic の EJB コンパイラは
-dipatchPolicy
、基になる RMI コンパイラに引数を暗黙的に渡します。Weblogic 8.1 ではdispatch-policy
、EJB のweblogic-ejb-jar.xml
記述子の要素を使用して実行キューを設定します。<!-- weblogic-ejb-jar.xml descriptor --> <weblogic-enterprise-bean> <ejb-name>myEJB</ejb-name> ... <dispatch-policy>myEJBQueue</dispatch-policy> </weblogic-enterprise-bean>
カスタム実行キューは、すべての EJB タイプ (セッション Bean、エンティティ Bean、および MDB) でサポートされています。
実行時に、Weblogic は構成済みの実行キューからサーブレット、JSP、EJB、および RMI オブジェクトのワーカー スレッドを割り当てます。これにより、アプリケーション内の選択されたオブジェクトが一定数のサーバー スレッドにアクセスできることが保証されます。実行キューが割り当てられていないオブジェクトの場合、スレッドはサーバーのデフォルトの実行キューから割り当てられます。