0

CLI から:suspend:resumeを呼び出すことはできますが、これによりすべての Bean (EJB、MDB) が中断されます。メッセージ駆動型 Bean MDB のみを一時停止する方法はありますか?

私のアプリケーションでは、すべての作業はメッセージ経由で行われます。メッセージ コンシューマーを一時停止できれば、進行中の作業がすべて完了するまで、システムの残りの部分が引き続き機能することを確信できます。たとえば、EJB がメッセージをキューに入れようとしていた場合、それを行うことができます。

4

1 に答える 1

1

MDB では、次の CLI 操作を使用できます。詳細については、 https://docs.jboss.org/author/display/WFLY10/Message+Driven+Beans+Controlled+Deliveryを参照してください。ドキュメントはWildFly 10用ですが。WildFly 9.x でも動作します

スタンドアロン モードの場合:

[standalone@localhost:9990 /] cd deployment=jboss-helloworld-mdb.war/subsystem=ejb3/message-driven-bean=HelloWorldMDB

[standalone@localhost:9990 message-driven-bean=HelloWorldMDB] :stop-delivery
{"outcome" => "success"}

[standalone@localhost:9990 message-driven-bean=HelloWorldMDB] :start-delivery
{"outcome" => "success"}

ドメイン モードの場合:

配信停止

 /host=master/server=default/deployment=helloworld.app.war/subsystem=ejb3/message-driven-bean=HelloWorldMDB:stop-delivery

配信開始:

 /host=master/server=default/deployment=helloworld.app.war/subsystem=ejb3/message-driven-bean=HelloWorldMDB:start-delivery

MDB が EAR ファイル内の EJB jar にある場合:

 /host=master/server=default/deployment=helloworld.app.ear/subdeployment=helloworld.core.impl.jar/subsystem=ejb3/message-driven-bean=HelloWorldMDB:start-delivery
于 2015-11-04T09:11:33.523 に答える