您的位置:首页 > 移动开发

【原创】一种实现IBM MQ通道传输能力垂直扩展的方法 - An Approach for Scaling Up/Down IBM MQ Channel Throughput

2016-04-17 16:49 671 查看
IBM MQ  作为业界主流的企业级消息中间件,被广泛应用于银行、金融、政府、制造、零售等各种行业。它的通道传输是实现跨系统、跨地域的消息通信主干的基础技术,与 之相关的业务场景包括分支机构与总部的互联、开放平台(Linux/Unix/Windows)与主机核心系统的上下行、双活数据中心之间的数据同步等 等。

作者在支持大量MQ客户案例的过程中,经常会遇到需要进行通道传输性能调优的情况。一方面,我们需要采用架构性、全局性的思维,从应用程序设计和代码实现、硬件资源消耗情况(如CPU, 内存,存储等)、网络参数设置和调优、MQ设置和调优等方面着手进行分析、测试和调优(这是一个更为深入的话题因此这里不作展开);另一方面,作者也在进行一些有趣的尝试,例如利用现有的MQ功能实现通道传输能力的垂直可扩展性,以便应用开发者或系统管理员通过简单的命令便可实现通道传输能力的实时调整。

下面是此方法的简要介绍、测试结果、扩展和收缩场景的操作命令,供各位参考。

As a predominant enterprise messaging middleware, IBM MQ has been widely used in various industries like banking, finance, government, manufacturing, retail, etc. The channel transfer of MQ is the foundation
of messaging backbones between distributed systems and cross geographies. Related scenarios include interconnections between branches and headquarters, inbound & outbound connection between distributed platforms (Linux/Unix/Windows) and mainframe(z/OS), data
replication between Active-Active data centers, etc.

I have been supporting a great number of MQ customer cases, and have often encountered situations in which MQ channel performance tuning is required. On one hand, we need to think architecturally and
horizontally, perform analysis, testing and tuning from comprehensive angles like: Application design and implementation; Hardware resource consumptions (like CPU, memory, storage); Network configurations and tuning; MQ configuration and tuning. On the other
hand, I have also done some interesting experiments, for example, using existing MQ functions to achieve the vertical scaling of channel throughput, so that either application developers and system administrators can using simple commands to dynamically adjust
the channel transfer.

Below is a brief introduction to this approach, as well as the test result, commands for scaling up and down scenarios. For your reference.













内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息