我正在使用WildFly 10.1,它与Artemis一起作为新的JMS提供程序提供,但我无法找到如何动态更改特定MDB的使用者线程数。
我有一个队列,一个消息监听器(MDB)消耗来自队列的消息,现在我想动态控制域必须启动的最大消费者线程数。
如何使用CLI执行此操作?
答案 0 :(得分:1)
如果您想为特定 MDB执行此配置,您可以先将其分配给专用池。请参阅this answer。
然后,要动态更新池属性,您可以查看this article,其中介绍了如何使用jboss-cli或standalone.xml配置配置或添加ejb3池。 (使用JBOSS 7,但它与Wildfly 10不应该如此不同)
然后可以使用以下jboss-cli命令动态修改池大小,因为MDB默认为20:
/subsystem=ejb3/strict-max-bean-instance-pool=myPool:write-attribute(name=max-pool-size)
最后,您似乎还必须在MDB中相应地配置“maxSession”激活配置属性。有关上下文配置,请参阅this thread和this question。