为缺省消息传递提供程序配置 MDB 调速
通过使用本任务,可以针对在缺省消息传递提供程序上部署为 JCA 1.5 资源的消息驱动的 Bean 配置消息调速。
开始之前
本主题中描述的调速支持仅适用于缺省消息传递提供程序(服务集成 JMS 资源适配器)。
对于 WebSphere MQ 消息传递提供程序,应通过在“WebSphere MQ 消息传递提供程序激活规范”面板上设置最大服务器会话数属性或通过 maxPoolSize 属性(使用 createWMQActivationSpec 或 modifyWMQActivationSpec wsadmin 命令时)来配置消息调速。
如果有符合 JCA 1.5 标准的第三方 JMS 消息传递提供程序,请参阅调整 JCA 1.5 消息驱动的 Bean 的入站消息流中描述的通用消息调速方法。
关于此任务
对于在缺省消息传递 JMS 提供程序上部署为 J2EE 连接器体系结构 (JCA) 1.5 资源的消息驱动的 Bean,如果要进行消息调速,请使用本任务。
缺省消息传递提供程序(服务集成 JMS 资源适配器)使用特殊类型的消息调速。您可以让消息驱动的 Bean 池保持为缺省大小 500。
- 每个消息驱动的 Bean 的最大实例数是由用来部署该 Bean 的激活规范中的“最大并发端点”设置进行控制。最大并发性限制有助于防止消息暂时积累时启动过多的 MDB 实例。缺省情况下,并发 MDB 实例的最大数目设置为 10。
“最大并发端点数”字段将限制用来同时处理消息的端点数(给定消息驱动的 Bean 的实例数)。如果已达到最大数目,那么直到端点完成其当前处理之后,消息传递引擎才会接受新消息以进行传递。
如果与消息驱动的 Bean 相关联的可用消息数(队列深度)总是较高,并且服务器可以处理更多并发工作,那么可以增大最大并发性设置,从而为您带来好处。
如果您为消息驱动的 Bean 设置最大并发性,那么指定的值务必小于适配器(即,与该消息驱动的 Bean 绑定的适配器)可创建的端点实例的最大数目。必要时,可增大端点实例限制。
- 激活规范还具有最大批处理大小,这是指在一批串行传递中可以为一个端点分配的消息数。例如,如果将“最大并发端点数”属性设置为 10,将“最大批处理大小”属性设置为 3,那么最多可以有 10 个端点且每个端点最多可处理 3 条消息,因此向该消息驱动的 Bean 分配的消息总数是 30 条。如果根据单个激活规范部署了多个消息驱动的 Bean,那么这些最大值将逐个应用于每个消息驱动的 Bean。
- 确保始终将“最大并行端点数”属性设置为小于 JCA 池大小。
要配置缺省消息传递提供程序(服务集成总线 JMS 资源适配器)的消息调速支持,请使用管理控制台完成以下步骤。