IBM-MQ经典培训教材PPT课件.ppt_第1页
IBM-MQ经典培训教材PPT课件.ppt_第2页
IBM-MQ经典培训教材PPT课件.ppt_第3页
IBM-MQ经典培训教材PPT课件.ppt_第4页
IBM-MQ经典培训教材PPT课件.ppt_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

WebSphereMQv6经典培训教材 Page2 什么是WebSphereMQ 一种成熟的方式在基于SOA的组件或系统之间实现可靠的传递像坚固而宽阔的大桥一样强健地连接应用和Web服务它能够连接任何商业IT系统通过易用 灵活 可靠及安全的方式帮助客户共享和交换重要的商业信息 WebSphereMQ为用户和应用开发人员提供了一种直接 简单 成熟的手段以实现应用系统在不同操作系统平台之间稳定可靠地传递 交换重要的数据和信息 确保消息不丢失 不复传 SOA 面向服务的体系结构 service orientedarchitecture 是一个组件模型 它将应用程序的不同功能单元 称为服务 通过这些服务之间定义良好的接口和契约联系起来 Page3 举例 应用A正在向应用B发送消息 时间的灵活性和独立性 B A B A B A 接收方 应用B繁忙或暂时不可达或者当前所在主机当机 SOA的连通需要在应用之间提供的持久化 always connected 的链路可以克服SOA资源不可得或者IT系统和网络不能提供服务造成的数据交互问题 网络出现故障 发送方 应用A在刚刚发送后当机 在传输期间两个应用都出现故障 Page4 简化应用和开发Reusable complexfunctionisprovidedbythemiddleware nottheapplication 高服务质量Reliability availability andscalabilityareprovidedbythemiddleware nottheapplication 更加安全Securitypolicyenforcementandresistancetoattacksareprovidedbythemiddleware nottheapplication WebSphereMQ的价值 应用部署 提高生产力Lowerdevelopmentcosts Higherreuseofassets 降低风险Bettertesteddeployments Higheravailabilityofskills 加快了响应时间Configurablechanges Fasterdevelopment 对业务的影响 Page5 IBMWebSphereMQ在业界不可动摇的领导地位 Intheworldoffinance theWebSphereMQmessagingplatformisthestandardforintegrationsolutions MartinFrick RaiffeisenGroup No oneintegratesmorereliably 业界最成熟提供端到端数据传输的中间件全世界超过10 000家WebSphereMQ的客户世界财富百强90 的客户世界财富500强超过300家的客户北美和欧洲66 的银行银行业的客户通过WebSphereMQ实现的交易价值超过35万亿美金政府行业客户每天通过MQ交换的消息超过6 75亿条 Page6 WebSphereMQ在国内的客户 中国人民银行工 农 中 建四大行交通银行中信银行华夏银行民生银行中国太平洋保险公司 北京移动 北方九省电信 中国海关电子口岸国家质检总局国家税务总局铁道部公安部新华社 等等 Page7 WebSphereMQ的概念 Page8 邮政系统与信件MailboxandLetter Page9 消息组成MessageComponent 消息类型报文消息请求 应答消息报告消息支持的消息最大长度为100MB 由队列管理器处理的消息属性唯一消息ID相关性ID路由信息响应路由信息消息优先级消息代码集 编码消息结构超时间隔 任意数据由发送和接收程序构造解析队列管理器不做解析 消息 消息描述符 用户数据 消息描述符 用户数据 Page10 消息类型MessageType 请求消息Requestmessage请求消息需要应答 从客户端发往服务器的查询和更新信息往往是一条请求消息 请求消息中应该包含回复消息的路由信息 即回复消息发往什么地方 回复消息Replymessage回复消息是对请求消息的回应 请求消息中的信息决定了回应消息的目的地 处理请求和回应的应用程序控制着消息间的关联 这种关联和队列管理器没有关系 报文消息Datagrammessage数据报消息是不需要回复的消息 报文消息只是一次单向的信息传送 报告消息Reportmessage报告消息用于对一些系统故障的响应 有些报告消息是由应用程序创建的 有些报告消息是由队列管理器创建的 Page11 消息长度MessageLength 最大消息长度为100MB 其中1MB等于1048576字节 缺省最大消息长度是4MB 实际上 消息长度受以下方面的影响 接收队列定义的最大消息长度队列管理器定义的最大消息长度传输队列定义的最大消息长度发送或接收应用程序定义的最大消息长度存储消息的可用空间 Page12 消息内容MessageContent 消息可以被认为是数据的最小传输单元 能够从一个应用到另外一个应用消息可以被应用构建消息可以被不同应用消费消息能够包含任意种类的数据 二进制数据 声音片段 电影文件 图片等 文本数据RawtextXML结构化数据 CStructures COBOLCopyBook SerializedJavaobjects 任意数据 Page13 消息的持久性Persistentandnon Persistent Page14 消息超时MessageExpiry 每个消息都具有单独的存活时间在消息被发送到队列之后开始计时如果消息没有被获取 自动将被破坏 抛弃基于超市的提醒和重新路由的消息能够进行配置 Page15 队列Queues 按照创建方法分类预定义队列动态队列按照功能分类本地队列localqueue远程队列remotequeue传输队列transmissionqueue动态队列和模板队列modelqueue启动队列initiationqueue群集传输队列死信队列deadletterqueue命令队列commandqueue回复队列replyqueue别名队列aliasqueue Page16 本地队列localqueue 一个本地队列是一个物理上位于本地队列管理器中的队列 本地队列实际上存在与本地系统的内存或磁盘存储中 本地队列管理器控制队列的访问 应用程序可以 PUT 消息到本地队列 也可以从本地队列 GET 消息 另外程序还可以查询或修改这些队列的某些属性 对队列属性的修改需要相应的权限 Page17 远程队列remotequeue 一个远程队列属于一个不与该应用程序直接相连的队列管理器 对这类队列的访问包含有本地队列管理器和远程队列管理器的通信过程 这种通信涉及到通道 应用程序可队远程队列进行某些操作 比如程序可以向一个远程队列放一条消息 但程序不能从远程队列中去消息 应用程序只能从本地队列读取消息 远程队列定义中的目的队列不一定是远程队列管理器的本地队列 它也可以是一个远程队列定义 如图所示 Page18 传输队列transmissionqueue 传输队列是临时存储目标为远程队列管理器的消息的队列 队列管理器利用传输队列把消息分阶段地发向远程队列 队列管理器和消息移动程序一起负责把数据传送到远程队列 当队列管理器收到把一条消息发往远程队列的要求后 它把消息发送到一个与目的队列管理器相关联的传输队列 传输队列位于本地队列管理器上 目的队列管理器的名称可能由应用程序提供 也可以从远程队列定义中得到 一个传输队列是两个队列管理器之间的发送方一端 所有直接目的地是同一队列管理器的消息都可放在同一个传输队列上 把消息从一个队列管理器传送到另一个队列管理器只需要一个传输队列 然而也有可能在两个队列管理器之间存在着多个连接以提供不同的传输服务 每个连接都带有一个不同的传输队列 传输队列是由MCA处理的 MCA负责在队列管理器之间可靠地传送消息 MCA实际上是处理传输队列上消息的MQI应用程序 Page19 死信队列deadletterqueue 死信 未传递的消息 队列是存储无法发送到其正确目的地的消息的队列 死信队列中的消息常常暗示了系统可能出现的问题 死信队列是WebSphereMQ面对远端系统错误时的一种解决方案 应用程序可以利用WebSphereMQ提供的其他一些工具来监视并确保消息的可靠传送和接收 在队列管理器创建时 系统会缺省创建一个死信队列 队列名是SYSTEM DEAD LETTER QUEUE 建议在生产系统上 需要独立创建一个死信队列 而不使用系统缺省的死信队列 Page20 其他队列otherqueues 命令队列 命令队列SYSTEM ADMIN COMMAND QUEUE是用来存放由应用管理程序放的具有PCF programcommandformat 的消息的队列 别名队列 别名队列实际上是本地队列 远程队列定义或队列名表的另外一个名字 它是一种简单的名字到名字的映射 它允许应用程序用另外一个名字来访问队列 别名队列允许在不修改应用程序的条件下访问其他名字的队列 动态队列和模板队列 除了有固定定义的队列之外 WebSphereMQ还为程序在它们执行时提供了动态地创建队列的能力 为了简化在创建动态队列时所必需设置的许多参数 动态队列总是基于模板队列被创建的 模板队列定义了动态队列的所有属性 当应用程序试图打开一个模板队列时 WebSphereMQ就创建一个动态队列 Page21 从队列中检索消息先进先出 FIFO 在消息描述符中定义的消息优先级 以FIFO为基础检索具有相同优先级的消息特定消息的程序请求应用并行访问队列管理器进行管理 队列Queues Page22 AnySystem QueueManagerA AppA api AnySystem QueueManagerB AppB api MCA MCA Queue A 消息传递可靠的传递时间独立性的传递事务的支持异步的传递 MCA MessageChannelAgent 队列管理器QueueManager data data 网络的独立性远程队列可以看作 本地 的队列 Channel SSL Kernel Kernel 优点 当应用在网络上被迁移的时候 无需重新编码和重新部署统一性和一致性意味着应用可以在多平台交换信息 队列管理器包含的工具命令行管理器 监听器 触发监控 通道初始化 Eclipse管理控制台 Page23 通道Channels 消息通道是一种提供从一个队列管理器到另一个队列管理器的通信路径应用在队列管理器与队列管理器之间的通讯单一方向通常成对使用应用在MQ客户端到队列管理器单一的 双向的通道的类型发送通道 Sender 接收通道 Receiver 服务器通道 Server 请求器通道 Requester 群集发送通道 Clustersender 群集接收通道 Clusterreceiver Page24 MQServer MQServer WebSphereMQ如何工作 消息服务是基于队列Queues队列采用存储转发机制 实现可靠的数据传递采用成熟的数据库技术 实现两阶段提交事务机制 保证消息不被丢失或重新复制基于主题关键字的方式 采用发布 订阅模式动态的路由消息运用多处理器的线程技术和集群技术加速消息的吞吐量 Message Queue ApplicationZ ApplicationA Page25 WebSphereMQ的功能和用法 Page26 WebSphereMQ能做什么 为需要交换数据和事件的应用 Web服务提供消息服务 成熟的传输可靠性事务的完整性 一致性时间的独立性 同步和异步易用性和快速部署灵活性和可扩展性高性能 高可用安全性可监控和审计开放性 对JMS WebServices等支持集群跨越多种平台压缩和触发等多种编程接口 ApplicationZ ApplicationA MQislikeemailforSOAapplications butemailyoucanbetthebusinesson WebSphereMQ Page27 可靠性 WebSphereMQ是唯一可保证信息一次性传输的中间件 确保对消息一次仅且一次 once and only once 的传递 做到不丢失 不重传 次序不乱 WebSphereMQ提供逻辑工作单元支持 logicalunitofwork 备份和恢复等多种机制 确保信息传输 意思是一旦WebSphereMQ接受一个信息传输的任务 会确保信息被传送到目标平台 信息的传输是一次且仅一次 另外 强健的中间件机制保证业务数据一致性 并可在系统发生故障时 及时恢复 业务不会受到影响 Page28 创建MQ用户标识和组 在安装WebSphereMQ之前 创建所需的用户标识和组标识 用户标识和组标识都必须设置为mqm 对于单独的机器 可以在本地创建新的用户标识和组标识 对于在网络信息服务 NIS 域中管理的机器 管理员必须在NIS主控服务器上创建这些标识 建议将mqm用户的主目录设置为 var mqm Page29 Generally likeinstallingothersoftwareonthesameplatform WindowsAutomaticexecutionofSETUPfromtheCD ROMAIXsmittySunSolarispkgaddHP UXswinstallLinuxrpm WebsphereMQfor MQ的安装 Page30 命令行管理控制台 Page31 命令行 创建队列管理器 必须有MQ的管理控制权限QMgrName是一个必需的参数 q制定这个队列管理器为默认队列管理器 ldLogPath制定MQ日志存放的目录 lfLogFilePages 4kpage64 32 65535 lpLogPrimaryFiles 2 510 254 默认值3 lsLogSecondFiles 1 509 253 默认值23 LPF LSF 511 255 Page32 命令行 删除队列管理器 Page33 命令行 启动队列管理器 Page34 命令行 关闭队列管理器 受控关闭 缺省值 立即关闭CompletesallcurrentMQIcalls butnonewones 抢先关闭 仅在意外情况下使用改类型的关闭 Page35 命令行 运行MQ命令行控制台 通过脚本创建系统对象 Page36 命令行 MQSC命令 Page37 错误日志 WebSphereMQ使用许多错误日志来捕捉MQ自身的操作 任何队列管理器的启动和正在使用的通道的错误信息在WebSphereMQWindows版中 假设WebSphereMQ已经安装在缺省位置中 如果队列管理器名称是已知的 则错误日志位于 c ProgramFiles IBM WebSphereMQ qmgrs qmname errors如果队列管理器不是已知的 则错误日志位于 c ProgramFiles IBM WebSphereMQ qmgrs SYSTEM errors如果错误发生在客户机应用程序 则错误日志位于客户机的根目录中 c ProgramFiles IBM WebSphereMQClient errors Page38 错误日志续 在WebSphereMQUNIX系统版中 如果队列管理器名称是已知的并且队列管理器是可用的 则错误日志位于 var mqm qmgrs qmname errors如果队列管理器不是可用的 则错误日志位于 var mqm qmgrs SYSTEM errors如果错误发生于客户机应用程序 则错误日志位于客户机的根目录中 var mqm errors Page39 错误日志续 在产品安装时 在qmgrs目录下将创建 SYSTEMerrors子目录 errors子目录最多可以包含3个错误日志文件 分别是 AMQERR01 LOGAMQERR02 LOGAMQERR03 LOG每一个文件的大小都为256KB当产生错误消息时 它们被放置在AMQERR01中 当AMQERR01文件比256KB大时 将其复制成AMQERR02 在复制前 将AMQERR02复制到AMQERR03 LOG 这样将删除了AMQERR03的以前内容 Page40 死信队列 出于某种原因无法发送的消息都被放置在死信队列 可以通过MQSC命令DISPLAYQUEUE来检查队列是否包含消息 如果队列包含消息 则使用所提供的浏览样本应用程序 amqsbcg 来浏览队列上的消息 样本应用程序将显示每个消息的消息描述符和消息上下文字段 应该通过分析消息的死信头来确定消息被放在死信队列的原因 Page41 首次故障支持技术FFST 这些错误通常都是严重的 不可恢复的错误 要么是系统的配置问题或WebSphereMQ内部错误在WebSphereMQWindows版中 FFST信息是存放在c ProgramFiles IBM WebSphereMQ errors目录下的文件中对于WebSphereMQUNIX系统版 FFST信息是存放在 var mqm errors目录的文件中在大多数情况下 当生成FFST记录时 系统管理员基本上不能自己解决问题 而需要寻求IBM支持中心的帮助 Page42 内容 WebSphereMQ概述功能介绍和基本概念WebSphereMQ的安装常见平台的安装MQ相互通信配置实例WebSphereMQ管理Eclipse管理控制台命令行WebSphereMQ开发指南C和Java的开发WebSphereMQ问题诊断WebSphereMQ的优化 Page43 日志参数调整 通过MQ的控制命令crtmqm来设置上面三个参数创建队列管理器的时候就要指定LogBufferPages代表日志缓冲区的大小 增大它的数值 也可以提高性能 如 可以把它的值设置为最大 即512x4Kpages 2MB通过修改qm ini文件来设置 Page44 队列管理器配置文件参数调整 通过修改该队列管理器的配置文件qm ini 可以调整一些MQ相关参数DefaultQFileSize队列文件的大小 Maximumamountofbytesinaqueue DefaultQBufferSize每一个队列的非永久性消息保留的内存大小 Maximumamountofmemoryreservedfornon persistentmessages TuningParameters DefaultQBufferSize 1024000DefaultQFileSize 1000000000 Page45 队列管理器配置文件参数调整 MaxChannels和MaxActiveChannels分别代表队列管理器允许配置的通道的最大个数和允许同时运行的通道的个数AdoptNewMCA停止先前存在的通道进程 并且为新的通道启动请求启动一个新的进程AdoptNewMCATimeout代表新进程等待旧进程结束的时间长度 以秒为单位 AdoptNewMCACheck代表启用AdoptNewMCA属性时必需的检查类型 CHANNELS MaxChannels 2000MaxActiveChannels 2000AdoptNewMCA ALLAdoptNewMCACheck ALLAdoptNewMCATimeout 30 Page46 队列管理器配置文件参数调整 KeepAlive参数的作用在于 当设置KeepAlive Yes时 表示操作系统的TCP IP参数设置对WebSphereMQ生效 可以利用调整操作系统层面的TCP IP参数 更好地实现MQ的断网续传 TCP KeepAlive Yes Page47 MQ测试样例 测试1本地通道测试1 使用mqadmin用户登录2 执行crtmqm qTEST QM 建立测试用的消息管理器 3 执行strmqmTEST QM 启动测试用的消息管理器 4 执行runmqscTEST QM5 输入defineql DATA 回车 建立本地队列DAT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论