GB/T28168-2011
信息技术中间件消息中间件技术规范
Informationtechnology-Specificationformessage-orientedmiddleware
![本文分享国家标准信息技术中间件消息中间件技术规范的全文阅读和高清PDF的下载,信息技术中间件消息中间件技术规范的编号:GB/T28168-2011。信息技术中间件消息中间件技术规范共有20页,发布于2012-06-01](/image/data/30184_1.gif)
- 中国标准分类号(CCS)L74
- 国际标准分类号(ICS)35.060
- 实施日期2012-06-01
- 文件格式PDF
- 文本页数20页
- 文件大小496.10KB
以图片形式预览信息技术中间件消息中间件技术规范
信息技术中间件消息中间件技术规范
国家标准 GB/T28168一2011 信息技术中间件消息中间件技术规范 nformationtechnology一Speeifieationformessage-orientedmiddleware 2011-12-30发布 2012-06-01实施 国家质量监督检验检疫总局 发布 国家标准化管理委员会国家标准
GB/T28168一2011 目 次 前言 范围 规范性引用文件 术语和定义、缩略语 术语和定义 缩略语 消息中间件的架构和组成 消息中间件架构 服务子系统 4.2 监控管理子系统 4.3 应用开发子系统 功能要求 5.1综述 服务子系统属性 5.2 5.3监控与管理 应用开发子系统 5.4 消息中间件的部署模式及拓扑结构 部署模式 拓扑结构 质量特性属性 易 用性 靠性 可 7." 1 7.3效率 7.4可维护性 13 7.5可移植性 支持的运行环境 8.1硬件体系结构 8 .2 操作系统 8. 网络通信协议 .3 8.4Java运行环境 附录A资料性附录消息中间件产品示例
GB/T28168一2011 前 言 本标准按照GB/T1.1一2009给出的规则起草 请注意本文件的某些内容可能涉及专利,本文件的发布机构不承担识别这些专利的责任
本标准由全国信息技术标准化技术委员会(SAC/TC28)提出并归口
本标准起草单位:东方通科技发展有限责任公司、电子技术标准化研究所、北京航空航天大学、 科学院软件研究所、金蝶中间件有限公司、中创软件商用中间件股份有限公司、北京中和威软件有 限公司,北京赛迪时代信息产业股份有限公司
本标准主要起草人:马新群、任宇、李海波、陈志峰,朱律玮、宁凯、张红艳
m
GB/T28168一2011 信息技术中间件消息中间件技术规范 范围 本标准规定了消息中间件的架构及组成、功能要求、质量特性要求及支持的运行环境等 本标准适用于消息中间件软件的开发和应用
规范性引用文件 下列文件对于本文件的应用是必不可少的
凡是注日期的引用文件.仅注日期的版本适用于本文 件
凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件 GB/T11457一2006信息技术软件工程术语 Java消息服务规范vl.1(JavaMessageServiceSpecifieation,vl.1 术语和定义、缩略语 3.1术语和定义 GB/T114572006中界定的以及下列术语和定义适用于本文件
3.1.1 应用applieation 应用程序 通过调用开发接口,在运行过程中使用中间件系统提供功能和服务的各种程序 3.1.2 消息message 不同的应用程序(进程或线程)之间传递或交换的信息
注;消息的格式及内容,由该消息的提供者及接收者协商而定
3.1.3 messagesender 消息的发送者 产生消息的应用程序
3.1.4 消息的接收者messagereeelver 接收消息的应用程序
3.1.5 队列queue 存储消息的缓冲区实体
注:队列由消息索引区和数据存储区组成
3.1.6 消息中间件系统message-orientedmiddlewaresstem 存在于物理机器上的一套消息中间件软件运行系统,包含一组程序和应用开发接口(AP.
GB/28168一2011 3.1.7 消息优先级messagepriority 根据消息的紧急程度,为消息设置的等级
消息可以有不同的优先级
在消息的发送中,高优先级 的消息可以得到优先处理
3.1.8 单消息singlemessage 消息中间件中传输的一条单一消息
3.1.9g 组消息groupmessnge 消息中间件中传输的一系列带有先后顺序的消息的组合
注:组消息由多个单消息组合而成,在处理时相当于一个消息
组消息中的单个消息,称为子消息, 3.1.10 Java消息服务JavaMessageSeriee;JMs 使用基于点到点或者发布/订阅的交互方式,遵从J2EE技术规范并实现异步消息传输的消息服务 系统
3.1.11 消息有效期expiryofmesage 产生消息时,应用设定的消息属性,表示消息可在队列中存放的最长时间. 3.1.12 消息生存期lifeeycleofmessage 消息从进人队列到该消息被接收者取出或被删除的时间段
3.1.13 死信deadleter 进人队列但不能完成传递过程的消息
注:如目的队列不存在的消息或有效期时间到的消息等
3.1.14 事件event 消息中间件系统在消息的传递过程中产生的动作
注:事件可由用户通过配置来定义
由事件触发产生的消息,称为事件消息
3.1.15 集群eluster 若干消息中间件系统组建为一个群组,对外提供消息的发送、接收和处理功能,宜具备负载均衡和 防止单点失效的功能
3.1.16 主题topie 种向多个消息订阅者分发消息的机制
发布者根据指定的主题名发布消息,订阅者通过主题订 阅消息
注:主题使得订阅者和发布者保持互相独立,不需要接触即可保证消息的传送 3.2缩略语 APT lnterface) 应用编程接口(ApplieationProgramming! TCP/IP 传输控制协议/因特网协议(TransferControlProtocol/InternetProtocol HTTP 超文本传输协议(HypertextTransferProtocoD
GB/T28168一2011 KitD JDK Java开发工具包JavaDevelopment JavaEE Jaa企业版(JaraEanterpriseeEdition) 12EE Java2企业版(Java2EnterpriseEdition) SSI 安全套接层(Sec eeureSocketsLayer) 消息中间件的架构和组成 消息中间件架构 消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步,可靠的消息传 输的支撑性软件系统
消息中同件一般由服务子系统.监控管理子系统.应用开发子系统三部分组成(参见附录)
其架 构如图1所示 监控管理 应用开发 子系统 子系统 服务子系统 图1消息中间件架构 消息中间件的组成功能如下 a)服务子系统是消息中间件的核心运行实体,提供消息传输、存储等功能 b)监控管理子系统是消息中间件的用户操作人口,提供对服务子系统监控,管理的功能; 应用开发子系统是消息中间件提供给用户进行应用程序开发的接口库
e) 4.2服务子系统 服务子系统由图2所示各功能模块组成
核心进程管理 应用 消息事件事务 队列日志 安全 程序 瞥理 管理 管理 管理 管理 管理 管理 网络传输 图2消息中间件的服务子系统 4.2.1核心进程管理 负责对整个系统的运行情况进行监控,报告,诊断和排除各种错误
它能够及时掌握各核心进程的 运行情况,当某个进程出现问题时,可以及时监测到并进行修复或报警
GB/28168一2011 4.2.2网络传输 消息中间件应提供在异构计算机系统间的数据传输,且这种传输是实时和可靠的
参与消息传递的消息中间件节点,可以是位于同一计算机系统中的节点,也可以是位于不同计算机 系统中的节点
消息中间件应能屏蔽计算机硬件和物理网络的差别,使得节点间逻辑关系的建立与硬 件和网络无关 4.2.3应用程序管理 消息中间件应提供对应用程序的灵活管理,包括启动、停止、监控和管理,并提供如下应用程序的启 动方式 随系统启动而触发; a 应根据用户设定的规则,如当队列中的消息积存到一定阔值时,启动应用程序去接收消息,以 b 避免和版少在队列中设有消息时,应用进行消息获取的无效操作,保证应用及时准确地获得消 息,提高应用处理的能力 定时启动
4.2.4消息管理 消息中间件的服务子系统应对队列中的消息进行管理,在消息进人队列,网络发送,网络接收,从队 列中接收的过程中,能够对消息的有效期进行检测,自动丢弃有效期到期的消息
消息进人队列后,出现故障造成无法传递时,该消息将被丢弃或处置,消息将结束其生存期
4.2.5事件管理 消息中间件应能根据用户定义的事件,适时产生事件消息,并允许用户通过调用应用接口进行查看 和接收,及时了解系统运行中消息发送、接收的情况
4.2.6事务管理 消息中间件应提供消息的事务管理
多个消息发送和接收可包含在一个事务里,系统保证一个事 务中的所有消息发送和消息接收的操作同时成功,或同时失败
失败的消息接收操作会将消息回退到 队列中,等待下次的处理
4.2.7队列管理 队列是消息的载体,消息中间件应提供对队列的静态和动态的配置,创建,更新和删除;允许用户根 据需要,在应用运行过程中,调用应用开发接口来创建临时队列,使用完毕后,清除该队列
4.2.8日志管理 为便于用户对系统运行状态的了解和问题的定位,应提供完整的日志功能,通过日志可以查看系统 的运行情况,并可以排除系统中出现的错误
日志记录级别及日志文件的大小都可以根据用户需求灵活配置,用户进行系统调试时,日志级别可 以设置得较高,以详细记录系统传输的信息,当系统稳定运行后,日志级别可以相应调低,以减少日志记 录对资源的占用
4.2.9安全管理 消息中间件宜提供安全管理功能
安全管理包括消息中间件的节点间身份认证、传递消息的网络
GB/T28168一2011 连接认证、消息传输的加密等
消息中间件可提供可定制的安全功能实现,来满足应用特定的安全要求
可提供消息层、传输层、 网络层的安全实现
监控管理子系统 4.3 监控管理子系统是实现对消息中间件及相关应用进行配置,监控、启动停止及管理的模块 管理工具应对系统对象进行动态管理和控制,以达到对系统运行规模进行调控,节省系统资源、提 高效率的目的
宜提供集中监控和管理功能,通过一个统一人口,对所有消息中间件节点进行监控和管理
应用开发子系统 应用开发子系统是供开发人员进行基于消息中间件开发应用系统的编程接口
开发人员利用应用 开发子系统,能够完成消息的传递和系统的维护管理
应用开发子系统应提供对多种计算机语言、开发工具和开发环境的支持,以方便应用的开发和 部署
a 提供C.C#.C十十和Java语言的应用开发接口; 提供符合Jaa消息传输规范(JMs)的Java语言开发接口 b 提供可供可视化开发工具使用的win32应用开发接口
功能要求 综述 本章从服务子系统、监控与管理,应用开发子系统3个方面,对消息中间件的功能要求进行了规定
5.2服务子系统属性 5.2.1消息组成及属性 5.2.1.1消息组成 消息应由消息头和消息体组成
消息头中定义了消息的属性信息,包含消息类型、消息唯一标识、 消息目的地、消息优先级、消息有效期、消息大小,用户自定义属性等信息;消息体中包含消息内容或消 息所传输文件的名称
通过消息属性,可以获得消息的相关信息,也可以来控制消息
5.2.1.2消息类型 按照消息体的存储方式,应分为缓冲区消息和文件消息,缓冲区消息中存储缓冲区的内容,文件消 息中存储文件的名称
5.2.1.3消息唯一标识 消息标识,可由应用设定,如果应用没有设定,应由消息中间件自动产生
消息的标识应保证消息 在全网内的唯一性
5.2.1.4消息目的地 发送消息时,应可以指定该消息的目的地
目的地可以是当前中间件系统节点,也可以是当前中间 件系统相邻的节点,还可以是和当前节点不相邻的节点
GB/28168一2011 5.2.1.5消息目标队列 发送消息时需要指定的目标队列
5.2.1.6消息优先级 应提供根据消息的紧急程度,为所发送的消息设置优先级的功能
一般情况下,高优先级的消息具 有更多的发送机会
5.2.1.7消息有效期 应提供消息有效期控制的机制,丢弃或处置过期消息,释放占用的系统资源,保证整个系统的运行 效率
有效期控制机制应不受发送方、接收方时钟不一致的影响
5.2.1.8消息大小 消息中间件通过该属性,获知消息的大小或设定发送消息的尺寸
5.2.1.9消息的自定义属性 消息中间件应提供消息自定义属性的功能,允许用户根据业务的需要和属性规则设定自定义属性 信息
接收消息时,自定义属性可用于过滤消息,来接收和应用指定的自定义属性及属性值相匹配的 消息
5.2.2消息分组 消息中间件应提供消息分组功能
组消息在消息中间件中,是作为一个整体来处理的
消息组中 的消息是按照先后顺序进行发送和接收的
5.2.3消息的持久性 按照消息的持久性,消息中间件系统应提供对持久性消息和非持久性消息的支持
当系统发生故 障时,非持久性消息被丢弃;持久性消息进行保存,并在系统重新启动后恢复
系统正常运行时,在消息 的有效期内,系统保证持久性和非持久性消息不会丢失
5.2.4消息的传输控制 5.2.4.1消息传输的唯一性 消息进人队列后,消息中间件负责传输
在目标节点可达的情况下,应保证消息能送达目的地,且 该消息的传输是不重复的
5.2.4.2多种消息的传输方式 消息中间件系统应提供点到点、路由转发和发布/订阅等多种消息传输方式
5.2.4.2.1点到点消息传输 点到点消息传输是指需要进行消息传输的两方直接建立传输通道,进行消息传输的方式,如图3
GB/T28168一2011 所示 发送队列 发送者 本地队列 接牧者 网络% 图3点到点消息传输 5.2.4.2.2路由转发消息传输 路由转发消息传输是指消息中间件支持在不相邻的系统间传输消息的方式,如图4所示 发送者 消息队列 消息队列 接收者 消息队列 图4路由转发消息传输 两个不相邻的消息中间件间宜支持多条路由互为备份
当正在使用的路由发生故障时,可以自动 切换到备份路由上,保证消息的正常连续传输
5.2.4.2.3发布/订阅消息传输 发布/订阅消息传输方式是指通过发布/订阅代理,为应用提供了一种透明的信息发布和信息消费 的框架,如图5所示: 消息的发布者只负责发布信息的收集,并通过一个公共“主题”来表示这个消息,消息的订阅者通过 公共主题来订阅需要的消息,当有订阅“主题”的消息发布时,消息自动发送给订阅者
a 订阅和发布可以实现一对多、多对一和多对多的消息传递方式; b 订阅者可以根据自己的需要订阅某些主题,然后在适当的时间从该主题上接收已经发布的 消息
订阅者和发布者可以分布在一个消息中间件系统上,也可以分别分布在不同的系统上,分布在不同 系统上的发布者和订阅者通过发布订阅代理间的网络进行消息传输
主题 主愚 订阅者 发布者 丁阅者 图5发布/订阅消息传输 5.2.4.3断点续传功能 消息中间件系统应提供断点续传功能
消息在传输过程中,不论是系统停止、硬件断电、硬件异常、 非正常关机还是网络意外中断等情况.消息都应仍保留在消息队列中,要保证消息没有丢失、内容完整
保证顺序,系统恢复后,消息将从传输失败点继续发送,而不是整个消息重新发送
GB/28168一2011 5.2.5连接管理 消息中间件应提供根据用户的需要,适时地建立网络连接通路的功能
当网络链路发生故障后,能 够自动重建连接
5.2.5.1常连接 在消息中间件间以预连接的方式建立传输通道,以减少因频繁建立/拆除连接所引起的系统开销和 网络开销,并通过定时发送检测包来检测其通断情况
5.2.5.2按需连接 在系统间有数据需要传输时,以实时建立连接的方式来建立传输通道,完成传输后自动关闭连接, 以此来节约系统占用的网络资源
按需连接在有数据传输请求的情况下建立,没有数据要求传输时 断开
5.2.5.3多连接 两个消息中间件系统间宜实现多条连接
用户可以通过配置来变更连接的数量,每条连接是同 等的
5.2.6事件管理 系统应提供事件管理功能,使得用户能够通过配置来定义事件以便跟踪消息的传输情况,如消息是 否已经传输完成等
当用户定义的事件发生时,系统应自动产生事件消息,并按事件的配置对事件消息 进行处理
事件功能也可以用来了解系统运行中出现的各种故障,以便进行及时处理
系统宜支持对“消息人队列”、“消息网络发送”“消息网络接收”、“消息出队列”等活动中的事件定 义,如,在“消息网络发送”活动中,可定义“开始网络发送”,“结束网络发送”等事件,来实现对消息传输 的精确管理
5.2.7性能管理 5.2.7.1网络流量控制 消息中间件宜提供流量控制功能
网络质量较高的系统,可以调大流量控制配置,以充分的利用网 络带宽;网络质量较差的系统,可以相应调小流量控制配置,以减少对网络的传输压力
5.2.7.2自适应网络通信链路 消息中间件宜实现网络通信链路的自适应机制
根据网络状况,对网络链路进行调节和补充,以适 应不同的网络环境,硬件环境(内存、CPU)等,能够更好的适应不同环境下通信的需要,节省系统资源 和提高传输效率
5.2.8队列管理 服务系统应支持用户根据消息的用途和目的地,创建如下不同类型的队列
如 接收队列或本地队列
物理队列,用于存储从异地节点通过网络传输到本地、本地节点应用放 a 人的消息
b)事件队列
物理队列,用于存储系统事件消息
系统事件中包含由配置中定义的事件触发的 消息、死信消息
GB/T28168一2011 发送队列
物理队列,用于存放网络发送出的消息的队列 c d) 集群队列
逻辑队列,是一个包含多个物理队列的列表
远程队列
逻辑队列,是远端节点的一个接收队列或远程队列在本地节点的一个逻辑映射
5.2.9集群 集群(如图6所示),应提供消息的接收和处理分布到若干个消息中间件系统上的机制,应支持防止 单点失效和负载均衡两类使用方式 防止单点失效当消息中间件集群中的某个子系统出现故障时,集群系统可以自动选择其他子 系统来完成消息的传输; b)负载均衡;当消息中间件系统希望在多个系统或多个队列上分摊消息处理的压力时,可以选择 负载均衡功能消息发送到集群队列后,会根据系统设置的权重按照比例将消息分发到不同的 队列中
集群内消息中间件系统的数量应可以根据需要动态调整
集群 接收者 中间件 发送者 接收者 中间件 接收者 图6集群 5.2.10安全服务 5.2.10.1综述 消息中间件应提供安全服务功能,如中间件节点间的身份鉴别、中间件节点间的SSL.安全连接、数 据包在传输过程中的加密和压缩、应用程序连接到消息中间件的身份鉴别等
5.2.10.2多层次的安全服务 宜在网络层、通道层和应用层多层面提供安全服务
网络层安全服务提供消息中间件节点之间的 身份鉴别;通道层提供数据包在传输层的加解密;应用层提供在应用层对整个消息进行加解密
5.2.10.3安全服务的实现 消息中间件系统应提供默认的安全服务的功能实现,如提供跨网络层和通道层的SSL协议的安全 管理
消息中间件可提供可定制的安全功能实现,宜支持消息层、网络层、传输层的安全接口的定制 a 消息层接口,如消息的加密、压缩接口 b)网络层接口,如建立网络连接的预处理接口、链路通道接口、后处理接口
GB:/T28168一2011 传输层接口,如网络数据包的安全传输接口
5.2.11日志管理 消息中间件系统应提供日志管理功能,运行过程中自动生成日志文件系统,登记系统的日常运行信 息,传输的数据包和文件信息,系统出错提示等,日志级别应分多级,级别越高,记录的数据越详细
志应可用于对系统的运行状态进行监控,亦可用于对系统的运行情况进行审计、故障处理、系统开发调 试跟踪
用户可以通过调整系统配置参数,抑制日志中部分或全部信息的输出
消息中间件系统的告警信息应能够及时显示在管理台、日志文件中,便于用户的查看和问题定位
应提供如下的日志管理措施: a)提供调试开关的功能,使用户可以根据需要及时调节系统的核心,提高效率和可靠性; b)提供日志定时清理和磁盘空间管理功能; e)提供日志的查询和管理功能; d)动态修改日志的等级,便于用户的排错
5.2.12网络协议支持 消息中间件应支持TCP/IP网络传输协议
宜支持HrTP超文本传输通信协议,以满足用户在 nternet网络上传输的需求
5.2.13系统动态配置 为了支持关键业务对7×24h不间断运行的要求,消息中间件应在系统不重新启动的情况下,可以 实现 a)动态修改节点的运行参数; 动态修改队列的个数; b 动态修改客户端连接的个数限制; c 动态扩充系统中应用的数量 d) 消息中间件系统应能根据应用规模或数据规模的增长,通过不断地调整系统的各项参数或不断增 加新的服务器去满足这种需求,应在运行系统不停机的情况下进行
5.3监控与管理 5.3.1消息中间件系统宜提供本地、远程和集中监控和管理功能 a)本地监控
实现对本地消息中间件系统的监控和管理; b)远程监控
实现对异地消息中间件系统的监控和管理; e)集中监控
通过同一个统一人口,实现对全网内的所有消息中间件系统(含本地、,远程系统)的 监控和管理
可以从一个统一人口监控和管理多个远程系统的运行
5.3.2监控管理应能实现的功能 实时查看各消息中间件系统的运行状态 a b)动态地修改系统配置及相关运行参数 查看各队列中消息的传输情况; c d)对所监控的对象进行启动、停止或删除等管理操作
消息中间件的监控和管理界面设计应直观、易懂
集中监控管理宜提供基于浏览器的操作方式,应 10o
GB/T28168一2011 能灵活地部署在用户选择的计算机系统上 5 应用开发子系统 5.4.1综述 消息中间件应提供一组供用户用于开发的API包
消息中间件应提供c.C#、C十十和Java等接 使用户可以使用多种计算机语言进行应用的开发
宜提供win32应用开发接口库的实现
口 应用系统可以通过调用这些接口实现消息的发送和接收、事件的获取、系统管理等功能,应用系统 只需要关心业务处理逻辑,而不必关心复杂的底层网络传输
5.4.2接口类型 接口分为本地接口和远程接口两种类型 本地接口是用于和本地消息中间件系统运行在同一台机器上的应用系统,而远程接口是用于远端 没有安装消息中间件的应用系统
应用系统可运行于安装有消息中间件的机器上,也可运行于没有消息中间件节点上
5.4.3接口要求 消息中间件系统在所有应用平台上提供一致的应用开发接口,以实现应用程序在不同平台上的 迁移
消息中间件提供的应用开发接口宜包括C接口,C十十接口,C井接口,win32AP1Java接口,Java 接口中宜支持JMsvl.1规范和JND1,以满足应用开发的标准化要求,并能与其他任何遵循JMsv1.1 规范的应用系统或中间件产品进行无缝集成. 5.4.3.1c,C十十,C井语言接口要求 提供消息的发送、接收,浏览、删除、状态查询、消息组、事务,发布/订阅接口
5.4.3.2Java接口要求 提供支持JDK1.4以上版本的消息的发送、接收,浏览、删除、状态查询、消息组、事务将发布/订阅 接口
Java接口可参考JMS规范实现,支持JMsv1.1以上版本;可在JMSv1.1的基础上,进行必要的 扩充,如文件消息、消息组等接口
5.4.3.3win32应用开发接口要求 宜提供消息的发送、接收,浏览、删除,状态查询、消息组、事务,发布/订阅的win32应用开发接口 使得符合win.32DLL调用标准的可视化开发工具能够通过该接口和消息中间件进行交互
消息中间件的部署模式及拓扑结构 6.1部署模式 6.1.1单机单系统方式 所有的应用程序均部署在同一台机器内,它们之间共用一个消息中间件运行系统进行消息的传递
1l
GB/28168一2011 6.1.2单机多系统方式 所有的应用程序均部署在同一台机器内,它们之间分别通过不同的消息中间件运行系统进行消息 的传递 6.1.3多机多系统方式 应用程序部署在网络的多台机器内,它们之间分别使用不同的消息中间件运行系统进行消息的 传递
6.1.4混合方式 应提供单机单系统方式、单机多系统方式及多机多系统方式的混合使用方式
6 拓扑结构 消息中间件系统应能根据用户的业务和应用,支持任意构建拓扑结构,如既支持树型逻辑结构,又 支持网状结构
消息中间件之间的部署关系,对业务和应用是透明的 质量特性属性 7.1易用性 7.1.1产品手册 消息中间件应提供完整的产品手册,保证产品手册与系统实际功能保持一致
产品手册应准确、清 楚,易于学习和掌握
应包含以下内容: a)产品系统概述; 产品安装说明 b) e)产品配置及管理说明; d 管理工具使用说明 e)产品故障排除方法; f 编程参考手册: 联机帮助
g 7.1.2产品可配置 消息中间件的子系统规模、队列数及每个队列中存放消息数据的空间大小应可以通过系统配置来 定义
7.1.3 应用示例 消息中间件应针对支持的开发语言,提供可供操作的应用示例包 a)c.c十十、C井、win32API应用示例 b) Java应用示例 eJMS应用示例
7.1.4安装和卸载 消息中间件的安装和卸载应提供简单明了的操作 12
GB/T28168一2011 消息中间件应提供windows平台上的图形界面形式的安装和卸载程序,引导用户安装和卸载 的全过程; 消息中间件的安装和卸载,若需要Java运行环境,应支持操作系统所提供的Java运行环境或 自带JDK等辅助工具; 简单易用,提供默认的配置策略
7.1.5启动和停止 消息中间件应提供命令行方式启动和停止
7.2可靠性 7.2.1核心进程的自动恢复 消息中间件系统提供核心进程自检功能
当有守护程序异常终止时,系统可以检测并自行重新启 动该进程
7.2.2消息的自动恢复 消息中间件系统,不论是由于系统停止、硬件断电、硬件异常、非正常关机还是网络意外中断等情 况,都应保证持久性消息不可丢失、内容完整,保证顺序,待故障排除后,消息将从传输失败点继续发送 而不是整个消息重新发送
7.2.3防止单系统失效 应实现集群功能,防止单个消息中间件系统失效后,消息不能传输
7.2.4路由的备份 宜实现备份路由功能
当一条路由出现故障时,可以通过备份路由到达接收方
7.3效率 中间件系统应能充分利用计算机系统的处理能力,网络带宽等资源条件,以获得应用需要的高效率 指标
消息中间件的效率指标可包括: 消息吞吐能力,指单位时间内,消息中间件能够处理的消息数量
可用在单位时间内发送、接 a 收的消息数来衡量
b)并发处理效率,可分为: 应用并发量,指系统能够支持的最大应用并发量 资源利用率,指应用并发情况下,对CPU资源的最大占用量
2 网络传输效率,可分为 消息的网络传输效率,指单位时间内网络发送完成的消息数 1 网络传输带宽利用率,是指中间件占用的网络带宽与网络可提供最大带宽的比率
在同 2 等环境下,消息中间件与FTP网络带宽利用率的对比可作为衡量消息中间件网络传输效 率的指标
7.4可维护性 系统的可维护性,体现在 提供动态或静态配置功能,使得在系统运行中或重新启动后,使用者能够改变系统的运行负载; a 13
GB:/T28168一2011 b提供详尽的日志记录系统; 提供用于故障排查、系统监控及管理的工具
7.5 可移植性 消息中间件在不同的系统平台上提供的应用开发接口应保持一致性,保证应用程序在源码级的可 迁移性 支持的运行环境 硬件体系结构 应支持32位,64位的计算环境 操作系统 应支持windows、,Unix和Linux等操作系统 8.3网络通信协议 应支持TcP/IP网络通信协议,宜支持HTTP等通信协议
Java运行环境 8 应支持JDKvy1.4以上版本
14
GB/T28168一2011 附 录A 资料性附录 消息中间件产品示例 A.1消息中间件的组成 消息中间件由运行节点,监控管理中心,应用开发子系统三部分组成
组成结构如图A.1所示: 监控管理中心 节点A 节点B 服务子系统 服务子系统 应 配置文件 配置文件 用 代 代 理 开 理 队 进 逃 列 程 程 核心进程 核心进程 图A.1消息中间件系统组成 节点是在一台物理机器上的一套运行环境,主要由相关的配置文件、核心进程,队列、代理进程组 成,提供基于队列的消息传输服务 监控管理中心是用来对节点进行配置和监控管理的平台,可提供集中式的远程管理,对所有节点的 监控和管理可以通过一个操作人口来完成
应用开发子系统是提供的一组API,应用开发人员使用它能够完成消息的传递和系统的维护管理
A.2节点 A.2.1综述 节点是由一个或一组服务子系统、配置文件、监控代理进程、系统运行监控进程组成,提供消息存 储、传输、管理和控制服务
节点的组成结构如图A.2所示 15
GB:/T28168一2011 节点 远程监控 代理 服务子系统 发送进程 数 按收进程 据 队 网 应用 列 络 区 客户代理 发布订阅代理 系统运行 监控 配置文件 图A.2节点的组成 A.2.2服务子系统 服务子系统负责对一组队列进行管理和监控,消息发送、接收、通道维护等工作都由队列控制单元 负责
一个节点可以根据系统的规模建立一个或多个服务子系统,以提高系统的管理灵活度和消息的 处理能力
服务子系统由配置文件、数据交换区、一组核心进程(发送进程,接收进程、监控进程)和一组代理进 程(客户代理进程,发布/订阅代理进程)等组成
数据交换区用来进行应用系统及中间件核心之间的数据交换;监控管理进程负责消息在数据交换 区中与队列之间进行传递,并负责监控队列中消息状态,根据情况向队列管理进程发出信号,以便队列 管理进程对某些消息进行特殊操作;发送进程负责将消息从队列中取出发送到网络上;接收进程负责从 网络上接收消息并放人队列;客户代理进程负责响应远程AP1的操作请求;发布/订阅代理负责提供发 布/订阅代理服务;队列是消息的安全存放地,队列存储消息直到它被应用程序处理
A.2.3系统运行监控 系统运行监控模块负责对整个系统的运行情况进行监控,并诊断、排除和报告各种错误
主要提供 以下功能: 监控各核心进程的运行状况,如当某个进程出现故障时,运行监控模块可以第一时间监测到、 并进行修复 b)根据用户的配置对应用程序进行启动和管理,如当有消息到达时,能够及时触发和通知应用进 行接收和处理
A.2.4远程监控代理 监控代理作为节点与监控管理中心之间的桥梁,负责为监控管理中心收集和提供节点的各类配置 信息、监控信息等,同时负责执行监控管理中心上的相关远程控制操作(如配置变更、消息清理),真正实 现监控管理中心对节点的实时动态管理 A.3监控管理中心 监控管理中心是一套基于web浏览器的、B/S架构的中间件系统及相关应用的集中监控管理平 16
GB/T28168一2011 台
它独立于节点运行环境,可以灵活地安装部署在专门的监控管理设备上
通过监控管理中心,可以 实现的主要功能有 对网络中所有节点的集中配置、监控、管理和维护等,能够大大提高系统的维护管理效率,降低 系统维护成本; b实时查看节点的运行状态、队列中消息的传输情况 可以动态地修改中间件系统配置及相关运行参数,并使其立即生效而无需重新启动系统 c d提供对所监控的对象进行启动、停止、删除、清空等管理功能
A.4应用开发子系统 A.4.1综述 提供对多种开发工具和开发环境的支持,提供c.,C井,C十+、Java方式的接口,并支持JMsvl.1 标准,方便了应用程序的开发
中间件的API接口分为本地接口和远程接口两种类型,本地接口是用于和节点运行在同一台机器 上的应用系统,而远程接口是用于远端没有安装节点的应用系统
A.4.2组成接口 提供连接操作、队列控制单元操作、消息操作、组操作和事务控制等应用开发接口
主要接口包括 连接操作接口
包括建立连接、拆除连接
建立连接是指连接到消息中间件的系统资源;拆除 a 连接是指关闭到消息中间件系统资源的连接
队列控制单元操作接口
包括打开队列控制单元,关闭队列控制单元
打开队列控制单元是 O 指连接到队列控制单元的资源,并进行应用程序的控制;关闭队列控制单元是指注销应用程 序,并关闭到队列控制单元资源的连接
消息操作接口
包括发送消息、删除消息,接收消息和确认消息
发送消息是指将消息存储进 目标队列;删除消息是指从指定队列中删除符合条件的消息;接收消息是指从指定队列取得符 合条件的消息,包含消息头及消息体;确认消息是指对接收过的消息进行确认(分提交和回滚 两种),只有在接收消息指定为手工确认方式时有效
组操作接口
包括组初始化、组提交、组回滚
组初始化是指开始一个组处理,登记组标识;组 提交是指对具有当前组标识的消息进行提交,这其中包含缓冲区消息或文件消息;组回滚是指 对具有当前组标识的消息进行回滚
事务控制接口
包括事务初始化,事务提交,事务回滚
事务初始化是指开始一个事务处理 登记事务标识;事务提交是指对当前事务中的所有消息进行提交,这其中包含缓冲区消息或文 件消息;事务回滚是指对当前事务中的所有消息进行回滚
信息技术中间件消息中间件技术规范GB/T28168-2011
一、信息技术中间件消息中间件技术规范GB/T28168-2011概述
信息技术中间件消息中间件技术规范GB/T28168-2011是由中国国家标准化管理委员会发布的标准,于2011年正式实施。该标准适用于基于消息传递模式实现的中间件产品和相关服务,规定了消息中间件的功能、性能、接口、测试方法等方面的内容。
二、信息技术中间件消息中间件技术规范GB/T28168-2011主要内容
信息技术中间件消息中间件技术规范GB/T28168-2011主要包括以下内容:
- 术语和定义
- 功能要求
- 消息传递模式
- 消息生命周期管理
- 消息可靠性保证
- 消息事务支持
- 消息分发支持
- 路由策略选择
- 消息安全机制
- 消息流控制
- 性能要求
- 消息处理速度
- 消息吞吐量
- 延迟
- 接口
- 消息发布接口
- 消息订阅接口
- 消息确认接口
- 消息查询接口
- 消息清除接口
- 测试方法
- 标志、包装、运输和贮存
三、信息技术中间件消息中间件技术规范GB/T28168-2011的应用
信息技术中间件消息中间件技术规范GB/T28168-2011为消息中间件产品和相关服务的开发、生产和使用提供了明确的标准和规范,可以有效保障用户的合法权益,提高生产企业的产品质量水平。同时,该标准对于消息中间件的选型、使用、维护和管理等方面也提供了有力的指导作用。
四、结语
信息技术中间件消息中间件技术规范GB/T28168-2011对于保障消息中间件产品质量和使用效果具有重要的意义,使用该标准可以有效提高消息中间件的使用效率和保障企业信息系统的稳定性。因此,在选择、使用、维护和管理消息中间件时,应当参考该标准的相关内容进行操作。