Websphere上的EJB 3.0 MDB,如何配置线程池

时间:2016-09-21 21:30:11

标签: java-ee websphere ejb-3.0 ibm-mq message-driven-bean

我正在使用EJB 3.0 MDB从MQ队列异步读取消息。此MDB打包为jar并作为依赖项导入Web项目。

此应用程序部署在Websphere 8.x上,整个配置(包括激活规范)与此帖中显示的类似:How to configure Java Message Driven Beans and Websphere Activation specification without hardcoded JNDI Names?

我的问题是,如何配置线程池,即要处理消息的线程数?

我找到了一些关于它的IBM文章,但所有这些文章都是关于弃用的ListenerPorts,而不是激活规范。

1 个答案:

答案 0 :(得分:2)

要配置两种基本设置来控制可以同时处理的消息数。

首先,最大服务器会话数定义了每个激活规范可以处理的并发消息数。

其次,激活规范服务器会话在WMQJCAResourceAdapter线程池的线程上运行,因此该线程池的最大大小非常重要。

因此,一个好的起点是配置WMQJCAResourceAdapter线程池,使其等于服务器可见的所有WMQ Activation规范中最大服务器会话数的总和。

E.g。如果您在服务器中有三个WMQ激活规范 最大服务器会话数设置为25,您应该将WMQJCAResourceAdapter线程池最大大小设置为75.

这一切都与this article中的屏幕截图一起解释。