中间件技术指引_MQ
- 格式:doc
- 大小:114.50 KB
- 文档页数:12
中间件技术指引_MQ目录中间件技术指引_MQ (1)目录 (2)1.中间件简介 (3)1.1.中间件优点 (3)1.2.WMQ原理 (4)1.3.WMQ体系结构 (4)1.3.1.消息 (4)1.3.2.队列 (4)1.3.3.队列管理器 (5)1.3.4.通道 (5)1.3.5.进程 (6)1.3.6.集群 (6)2.安装 (6)2.1.安装要求 (6)2.2.介质准备 (6)2.2.1.确定需要安装的介质版本 (6)2.2.2.把介质上传到服务器上 (7)2.2.3.解压缩介质 (7)ER, GROUP设定 (7)2.3.1.mqm (7)2.4.mqm的.profile设定 (7)2.4.1.为mqm设定PROFILE (7)2.5.创建内置盘上的FS,jfs2, 3G (8)2.6.安装WMQ的介质和补丁 (8)2.6.1.安装WMQ介质 (8)2.6.2.安装WMQ补丁 (9)2.6.3.检验是否安装成功 (10)3.配置WMQ对象 (10)3.1.配置要求 (10)3.2.创建队列管理器 (11)3.2.1.创建存储上的FS,jfs2, 5G (11)3.2.2.创建队列管理器 (11)3.3.修改TCP参数 (11)3.4.修改qm.ini文件 (12)4.附件 (12)4.1.系统软件配置基线 (12)1.中间件简介中间件处于应用软件和系统软件之间,是一种以自己的复杂换取企业应用简单化的可复用的基础软件。
在中间件产生以前,应用软件直接使用操作系统、网络协议和数据库等开发,开发者不得不面临许多很棘手的问题,如操作系统的多样性,繁杂的网络程序设计和管理,复杂多变的网络环境,数据分散处理带来的不一致性,性能和效率、安全问题等等。
这些问题与用户的业务没有直接关系,但又必须解决,耗费了大量有限的时间和精力。
于是,有人提出将应用软件所要面临的共性问题进行提炼、抽象,在操作系统之上再形成一个可复用的部分,供成千上万的应用软件重复使用。
这一技术思想最终形成为了中间件产品。
从技术上讲,中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。
1.1. 中间件优点1 应用开发:The Standish Group分析了一百个关键应用系统中的业务逻辑程序、应用逻辑程序及基础程序所占的比例,发现了一个有趣的平均百分比,其中,业务逻辑程序、应用逻辑程序仅占总程序量的30%,而基础程序却占了70%!若是以新一代的中间件系列产品来组合应用,同时配合以可复用的商务对象构件,则应用开发费用可节省至80%。
2 系统运行:没有使用中间件的应用系统,其初期投入的资金及运行费用要比同规模的使用中间件的应用系统多一倍。
3 开发周期:时间限制是所有应用系统开发项目的天敌,而基础软件的开发又是一件极耗时的工作,若使用标准商业中间件则可缩短开发周期50-75%。
4 减少项目开发风险:The Standish Group对项目失败的定义是:项目中途夭折、费用远远超过预算、无法准时完成项目和偏离既定的目标。
研究表明,没有使用标准商业中间件的关键应用系统开发项目的失败率高于90%。
而且,企业自己开发内置的基础(中间件)软件是得不偿失的,项目总的开支至少要翻一倍,甚至会十几倍。
5 合理运用资金:借助标准的商业中间件,企业可以很容易地在现有或遗留系统之上或之外增加新的功能模块,并将它们与原有系统无缝集合。
6 应用集合:依靠标准的中间件可以将现有的应用、新的应用和购买的商务构件融合在一起。
7 系统维护:每年维护自我开发的基础(中间件)软件的开支是当初开发费用的15%至25%,每年应用程序的维护开支也还需要当初项目总费用的10%至20%。
8 质量:基于企业自我建造的基础(中间件)软件平台上的应用系统,每增加一个新的模块,就要相应地在基础(中间件)软件之上进行改进。
The Standish Group在调研过程中,曾在某个企业中的一个应用系统里,发现了有多达1万7千多个模块接口,而标准的中间件在接口方面都是清晰和规范的,可以有效地保证应用系统质量及减少新旧系统维护开支。
9 技术革新:企业对自我建造的基础(中间件)软件平台的频繁革新是不容易实现的,也是不实际的,而购买标准的商业中间件,则对技术的发展与变化可以极大地增强其适应性。
10 增加产品吸引力:不同的商业中间件提供有不同的功能模型,合理地使用,可以让用户的应用更容易增添新的表现形式与新的服务项目,从而使得企业的应用系统更完善、更出众。
1.2. WMQ原理Websphere MQ是IBM的商业通讯中间件(Commercial Messaging Middleware)。
Websphere MQ提供一个具有工业标准、安全、可靠的消息传输系统。
它的功能是控制和管理一个集成的商业应用,使得组成这个商业应用的多个分支程序(模块)之间通过传递消息完成整个工作流程。
Websphere MQ基本由一个消息传输系统和一个应用程序接口组成,其资源是消息和队列(Messaging and Queuing)。
1.3. WMQ体系结构WebSphere MQ对象是一种由WebSphere MQ管理的具有可恢复能力的资源。
1.3.1.消息消息是对使用它的应用程序有意义的以字节为单位的字符串。
消息可以用来实现在相同或不同平台上应用程序间的通信。
WebSphere MQ 消息由两个部分:应用程序数据。
应用程序数据的内容和结构由使用它的应用程序定义。
消息描述符。
消息描述符标识消息,并包含其它控制信息,如消息类型和消息的优先级。
1.3.2.队列队列是用于存储消息的数据结构,目前WebSphere MQ 版本 5.3 支持超过 2 GB 大小的队列。
按创建方法分类1.预定义队列由管理员使用相应的MQSC 或PCF 命令创建。
预定义队列是永久的;它们的存在与应用程序是否实用它们无关,并且WebSphere MQ 重新启动后继续存在。
2.动态队列在应用程序发出设定模型队列名的MQOPEN调用时创建的。
被创建的队列是基于一个模板队列。
您可以使用MQSC 命令DEFINE QMODEL 创建模板队列。
动态队列继承了模板队列的属性。
模板队列有一个属性可以说明动态队列是永久的还是临时的。
永久队列在应用程序和队列管理器重新启动后继续存在;临时队列在重新启动后消失。
按功能分类1.本地队列(local queue):一个本地队列是一个物理上位于本地队列管理器中的队列。
本地队列实际上存在与本地系统的内存或磁盘存储终。
本地队列管理器控制队列的访问。
应用程序可以“PUT”消息到本地队列,也可以从本地队列“GET”消息,另外程序还可以查询或修改这些队列的某些属性。
对队列属性的修改需要相应的权限。
2.远程队列(remote queue):一个远程队列属于一个不与该应用程序直接相连的队列管理器。
对这类队列的访问包含有本地队列管理器和远程队列管理器的通信过程。
这种通信涉及到通道。
应用程序可对远程队列进行某些操作,比如程序可以向一个远程队列放一条消息,但程序不能从远程队列中去消息。
应用程序只能从本地队列读取消息。
应用程序有两种不同的方法可用来访问远程队列。
第一种是当程序打开一个远程队列时同时提供队列管理器名和队列名两个参数。
这要求程序知道目的队列属于哪个队列管理器。
第二种方法是在本地队列管理器上存在一个远程队列的定义,这个定义包含有足够的信息让本地队列管理器确定该远程队列所在的队列管理器。
1.3.3.队列管理器在WebSphere MQ中队列管理器是基本的软件系统,队列管理器可看成是队列和其他对象的容器。
WebSphere MQ中的每一个队列都属于一个队列管理器,队列管理器是为应用程序和WebSphere MQ部件(一些管理工具)提供对队列管理中对象的访问。
一个队列管理器是WebSphere MQ中的一个基本的独立的执行单元。
一台机器上可以运行一个或多个队列管理器。
1.3.4.通道消息通道是一种提供从一个队列管理器到另一个队列管理器的通信路径。
消息通道用在分布式的队列把消息从一个队列管理器发送到另一个队列管理器。
它们使应用程序屏蔽了底层的通信协议。
队列管理器可能存在同种或异种平台之间。
为了实现队列管理器之间的通信,您必需在一个队列管理器中定义一个发送消息的通道对象,在另一个队列管理器中定义一个接收消息的通道对象。
消息通道是一个单向链接。
1.3.5.进程进程定义对象定义响应WebSphere MQ 队列管理器上的触发器事件启动的应用程序。
进程定义属性包含应用程序标识、应用程序类型和特定于应用程序的数据。
1.3.6.集群在使用分布式排队的传统WebSphere MQ 网络中,每个队列管理器是独立的。
如果队列管理器需要将消息发送到另一个队列管理器,则它必须定义一个传输队列、一个到远程队列管理器的通道,以及它要将消息发送到的每个队列的远程队列定义。
群集是一组以队列管理器可以在不需要传输队列、通道和远程队列定义的情况下在单个网络上彼此直接通信的方法设置的队列管理器。
2.安装2.1. 安装要求配置项说明基线值/var/mqm文件系统/var/mqm文件系统新建/var/mqm文件系统,大小至少2G用户和组如果是HA环境,主机和备机的用户和组ID需要相同用户mqm,组mqmMQ产品文件目录MQ产品文件目录/usr/mqm MQ用户目录MQ用户目录/var/mqmMQ服务器端必需组件MQ服务器端必需组件mqm.base.runtime mqm.base.sdk mqm.server.rtemqm.java.rteMQ客户端组件MQ客户端组件mqm.client MQ补丁集MQ补丁集7.0.1-WS-MQ-AixPPC64-FP00052.2. 介质准备2.2.1.确定需要安装的介质版本在SRCB安装版本为:WMQ 7.0.1.5 FOR AIX PPC64介质清单如下:-rw-r--r-- 1 root system 342036480 Nov 07 09:55 7.0.1-WS-MQ-AixPPC64-FP0005.tar -rw-r--r-- 1 root system 291266560 Nov 07 09:57 CZ4V7ML_WMQ7_AIX64.tar2.2.2.把介质上传到服务器上目前产品介质、所有所需的补丁保存在每台服务器的/softinstall/mq目录中。
2.2.3.解压缩介质解压缩目录应当有5G的剩余空间。
gunzip *.Zgunzip *.gz2.3. USER, GROUP设定2.3.1.mqm在所有需要安装WMQ的机器上,创建该用户。