websphere mq性能调优浅谈

websphere mq性能调优浅谈

ID:9499467

大小:71.00 KB

页数:13页

时间:2018-05-01

websphere mq性能调优浅谈_第1页
websphere mq性能调优浅谈_第2页
websphere mq性能调优浅谈_第3页
websphere mq性能调优浅谈_第4页
websphere mq性能调优浅谈_第5页
资源描述:

《websphere mq性能调优浅谈》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、WebSphereMQ性能调优浅谈  目前随着我们在中国的Q(MQSeries)用户数量越来越多,越来越多的用户开始对MQ使用时的性能优化问题提出要求,希望能够更好地使用我们的产品,并尽可能的发挥它的最大优势,这里,我根据日常积累的经验谈一谈在MQ性能优化方面应该考虑的因素。  目前随着我们在中国的Q(MQSeries)用户数量越来越多,越来越多的用户开始对MQ使用时的性能优化问题提出要求,希望能够更好地使用我们的产品,并尽可能的发挥它的最大优势,这里,我根据日常积累的经验谈一谈在MQ性能优化方面应该考虑的因素。  一、与API调用有关的MQ性能考虑因素  这里,我们在讨论各个A

2、PI对性能的影响时,均以C语言提供的API为例,其他开发语言与此类似。  1关于MQCONN/MQDISC的使用  在MQ的13个函数中,MQCONN/MQDISC是最耗CPU的两个函数,其次是MQOPEN和MQCLOSE这两个函数,因此要尽量避免必要地重复使用这几个函数。比如,当您需要从队列中读取多条消息时,正确的编程方法应该如下:MQCONNMQOPENMQGET...MQGETMQCLOSEMQDISC  即:连接/断开队列管理器一次,打开/关闭队列一次,读取消息多次。而不应该反复建立与队列管理器的连接和反复进行队列打开/关闭操作。  2MQCONNX的使用  通常,我们使

3、用MQCONN这个函数建立与队列管理器的连接,除此之外,MQ支持trustedapplicationbinding,即fastpathbinding,用MQCONNX来实现。当从性能方面考虑时,我们可以使用MQCONNX来提高性能。  在使用MQCONNX时,我们可以设置MQO(connectoption)来指定连接方式。缺省情况下,该选项为MQO_STANDARD_BINDING,如果设置为MQO_FASTPATH_BINDING,即表明采用fastpathbinding方式连接队列管理器,这种应用称为trustedapplication。所谓的trustedapplicati

4、on,是指该应用程序和本地队列管理器代理组成同一个进程,从而提高性能。利用fastpathbinding不仅能够提高连接队列管理器的性能,同时也能够提高mqopen,mqclose的性能。  3消息大小对mqput,mqget函数耗时的影响  尽量减小消息的大小,小消息的读取效率要高。对于mqget,mqput这两个函数而言,8k以下的消息的耗时差别不大,8k到128k的消息的耗时随着消息大小的增加而增加。大于128k的消息耗时较大,因为当与队列相关的内存满了的时候,会有硬盘交换。  同时要注意,从传输效率而言,如果在广域网上进行消息传输,消息太小会影响传输效率,因为对于每一消息

5、,MQ都会有一个消息头,它会占有一定的字节数,如果把消息拆分太小,每个消息的传输头都会占据一定的开销。  4对一个空队列的open,close操作比非空队列的同样操作耗时要多。  第一次open队列耗时比接下来的open耗时要多,对本地队列和远程队列的open,close耗时基本相同。  5使用MQCMIT对消息进行批处理  当处理一批消息时,可以采用MQCMIT函数,将若干消息作为一个完整的交易来处理,消息将作为一个batch统一提交,而不是一个个地分别提交,因此,可以提高性能。尤其对于永久性的消息效果更加明显。  6使用DistributionList方式来把相同的消息发往不

6、同的目的地  大家知道,MQ适用于不同类型的应用。不仅可以实现点对点的通讯,还通过DistributionList支持多点广播应用,即能够将消息发送到多个目标站点。可以使用一个MQ函数调用将单一消息发送到多个目标站点,并确保为每一站点可靠地提供信息,减少了函数调用的个数。同时,MQ不仅提供了多点广播的功能,而且还拥有智能消息分发功能,在将一条消息发送到同一系统上的多个用户或队列时,MQ可以将消息的一个复制版本和该系统上接收者的名单发送到目标系统。目标系统在本地复制这些消息,并将它们发送到DistributionList上的队列,从而减少了网络的传输量。   7当向队列管理器仅发送

7、一条消息时,使用MQPUT1函数。  在MQ的13个函数中,MQPUT1实现了这样一种功能,即它合并了MQOPEN,MQPUT,MQCLOSE三个函数的功能,在打开队列并且只希望发送一条消息时,它的CPU消耗比上述三个函数相加要少。  8用matchcorrelationID的方法取消息比不匹配性能要差。  二、与队列属性有关的MQ性能考虑因素  1消息的永久性和非永久性  大家知道,MQ的消息分为永久性消息和非永久性消息两种,永久性消息是保存在硬盘存储介质上的,需要纪录日志的;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。