WebSphere Process Server V6.2 性能调优,第 2 部分 多并发环境下的性能调优介绍3

2)打开服务集成总线 (SIB) JMS 资源适配器管理面板,在服务器作用域上,选择 资源 > 资源适配器 > 资源适配器。如果没有适配器,打开首选项 (Preferences) ,将复选框显示内置资源 (Show Built-in Resources) 勾上。

图 13. 查看资源适配器

3)选择服务集成总线 JMS 资源适配器 (SIB JMS Resource Adapter) ,将线程池别名从默认改为 MDBThreadPool 。

图 14. 改变 SIB JMS 资源适配器的线程池

4)对节点和单元范围,重复第 2 步,第 3 步操作。

5)重启服务器以保证更改生效。

值得注意的是即使是使用专用的线程池,一个资源适配器相关所有的 MDB 仍然共用相同的线程池,但是它们不再需要同使用默认线程池的其他 WPS 任务争夺资源。

5 配置 JMS 和 JMS 队列连接工厂

如果 JMS 连接池未被调优,与 JMS 提供程序的连接可能会成为多并发运行的线程的瓶颈。最大连接数 (Maximum Connection) 定义了在这个连接池中所能创建的最大物理连接数。一旦连接池中的连接数达到上限,则在当前正在使用中的一个物理连接被返回,或抛出异常 ConnectionWaitTimeout 之前,新的物理连接都无法被成功创建。

举例来看,如果最大连接数被设为 5,并且此时已有 5 个使用中的物理连接,连接池管理器将等待某个物理连接被释放,等待时间的长短由连接超时参数 (Connection Timeout) 决定。对于此时等待连接到基础资源的线程来说,它将一直受限,直到连接被释放并由连接池管理器分配给它。如果在指定间隔内没有连接被释放,将抛出 ConnectionWaitTimeout 异常。

如果最大连接数设为 0,则连接池可以无限增长。同时连接超时设置将被忽略。

对连接工厂进行调优的通用准则是:连接池的最大连接数需与并发线程数和每个线程并发的连接数相乘的结果相匹配。例如,如果在一个模块中希望同时运行 10 个线程,每个线程的最大并发连接是 2 个,则最大连接数属性应设为 10 × 2=20 个。 从连接工厂管理面板上,打开 其他属性 > 连接池属性,可以设置连接池最大连接数等参数。可以看到,它的默认值是 10。

图 15. JMS 连接工厂

图 16. 设置 JMS 连接工厂连接池最大连接数参数

队列连接工厂的调优与连接工厂类似。

图 17. 设置 JMS 队列连接工厂连接池最大连接数参数

您可使用 Tivoli Performance Viewer 来帮助确定连接池的最优连接数。如果并发等待的数目大于 0,但是 CPU 负载未接近 100%,那么可以考虑增加连接池大小。如果 CPU 使用百分比值一直低于正常工作负载,那么可以考虑减少池中的连接数。

如果输入业务对象来自 J2EE 连接器架构 (Java™ EE Connector Architecture, JCA) 1.5 资源适配器(非 SIB JMS 资源适配器)

MDB 通过使用 JCA1.5 资源适配器来处理来自企业信息系统的非 MQ 或 JMS 请求。这里 MDB 表现得像在某一特定端点 (Endpoint) 的监听器一样。在 JCA1.5 规范中,这些 MDB 通常被称为消息端点 (Message Endpoint),或者简称端点。每一个配置了一个或多个 MDB 的应用必须指定用于发消息给端点的资源适配器,还需要通过配置 J2C 激活规范以控制该 MDB 的行为。

1 配置 J2C 激活规范

同我们在 JMS 激活规范调优中提到的一样,针对 J2C 激活规范有两个关键参数需要进行调整:maxConcurrency 和 maxBatchSize。maxConrurrency 用来限制 MDB 的最大实例数。它的缺省配置是 10。通常来讲,在多并发环境下缺省的值偏小,需要对其进行调整以增加并发处理能力。但是该值也并非越大越好,还要基于可用资源的情况进行设定。通过设定 maxConrurrency 限制可以防止在临时构建消息时启动过多的 MDB 实例。maxBatchSize 用来限制 MDB 的最大批处理大小。缺省情况下,一次只传递一条消息给 MDB 实例。在多并发环境下,需要通过将消息成批传递给 MDB 来提高性能。

您可以选择以下两种路径从管理控制台对 J2C 激活规范相关的参数进行配置: 1)资源 > 资源适配器 > J2C 激活规范 > 激活规范名称 > J2C 激活规范定制属性

图 18. 设置 J2C 激活规范的 maxConcurrency 和 maxBatchSize 参数 (1)

2)资源 > 资源适配器 > 资源适配器名称 > 其他属性 > J2C 激活规范 > J2C 激活规范名称 > J2C 激活规范定制属性
在实际业务场景中,图 19 中的路径主要用于对第三方适配器的 J2C 激活规范进行调优。下图中只标出了常见的调优参数,更加详细的资源适配器调优请参考其他文档。

图 19. 配置 J2C 激活规范 (2)

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注