APP下载

基于ZeroMQ的企业信息服务总线在轨道交通运行生产管理系统中的应用技术

2018-08-10王大鹏余鹏

科学与财富 2018年16期
关键词:变位路由总线

王大鹏 余鹏

摘 要:为了提高轨道交通运行生产管理系统内部各个子系统的的通信效率,采用ZeroMQ消息中间件技术和轻量级的json数据交换格式,设计了一种有效的分布式网络消息通信架构。该架构用在轨道交通运行生产管理系统,提高了数据的传输效率;解决了系统内部各个子系统之间的通信效率问题,并且可以胜任不断变化的环境和任务要求,具有广泛的适用性和良好的应用性。

关键词:轨道交通运行生产管理系统;消息中间件; ZeroMQ;

引 言 轨道交通供电运行安全生产管理系统从整条轨道交通线路全面考虑,实现供电系统整体的运行安全管理,满足轨道交通供电系统安全、规范、可靠的运行要求。系统包括工作票系统、操作票系统、巡视系统、数据采集与监视系统(SCADA系统)、地线管理系统等主要组成部分。各个子系统之间往往需要有高效的信息交互,如果使用一对一的通信方式,不但影响系统的通信效率,还影响系统的运行速度;为了解决这个问题,本方案引用消息中间件和SOA的概念,避免了一对一通信的复杂网络结构,通过成熟的ZEROMQ中间件技术,运用面向服务的思想,完美实现了轨道交通供电运行安全生产管理系统内部的高效通信。

1主要技术介绍:

1.1 ZeroMQ的简介

ZeroMQ是一种基于消息队列的多线程网络库。其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字,ZeroMQ是网络通信中新的一层,介于应用层和传输层之间(按照TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。可以用来构建多对多的连接模式,如发布-订阅、任务分发、请求-应答等,也可以构建由单个模式组合成的复杂框架。ZeroMQ的快速足以胜任任何集群应用产品。它的异步I/O机制让你能够构建多核应用程序,完成异步消息处理任务。ZeroMQ有着众多语言支持,并能在几乎所有的操作系统上运行。

1.2 JSON的简介

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

2 技术方案

2.1 企业信息服务总线软件架构设计

本方案采用“SOA”的设计思想,构建出基于ZeroMQ的企业服务总线,总体分层结构图如下所示:

2.2企业信息服务总线实现的主要功能:

2.2.1信息交换路由服务

企业信息服务总线能够根据信息内容,在不同应用和服务之间进行信息传输和路由。

2.2.2通信协议转换功能

企业信息服务总线能够实现各个系统或应用之间的通信协议转换,支持Http、Ftp、Web Service、MQ、JMS等多种数据传输协议的相互转换。

2.2.3消息格式转换功能

企业信息服务总线能够实现各个系统或应用之间的消息格式转换,通过输入、输出消息字典的字段对应设置,可将消息转换成用户需要的任何格式。

3 功能实现

基于ZeroMQ的企业信息服务总线,主要处理流程有两种:请求/应答通信方式和發布/订阅通信方式,其它处理流程一般是这两种的复杂组合,下面以申请操作票票号和设备状态变位的具体实现过程举例说明:

3.1 功能描述:客户A在系统A的客户端上申请操作票票号,企业服务器总线收到信息后把申请信息发送给目标系统:操作票系统,并返回操作票系统的应答给系统A的客户端。

具体实现过程如下:

3.1.1客户A在系统B的客户端上申请开操作票时,首先要申请票号,系统B的客户端调用通用接口,并填入正确的信息格式,目标系统和源系统一定要填对,不然会影响功能的实现,组成正确的信息json包并发送到企业服务总线;

3.1.2企业服务总线先通过消息格式转换功能模块,解析出目标系统:操作票系统和源系统:系统B的客户端,然后根据目标系统:操作票系统的输入信息格式组包,信息交换路由模块把系统B的客户端的请求经一定格式组包后发送到目标系统“操作票系统”;

3.1.3“操作票系统”解析命令字后并处理收到的请求,得到结果后更改目标系统和源系统为系统B的客户端和操作票系统,再通过信息交换路由模块把结果发送给系统B的客户端;

3.2 功能描述:数据采集与监视系统收到设备A的变位信息,如果系统B的客户端在企业服务总线订阅了设备A的变位服务,则企业服务器总线会把设备A的变位信息通知给系统B的客户端;否则,则不发送。

具体实现过程如下:

3.2.1数据采集与监视系统采集到设备A的变位信息后记录并把变位信息推送给企业服务总线;

3.2.2如果在企业服务总线订阅设备的变位服务的队列列表中包含系统B的客户端,则企业服务器总线会把设备A的变位信息组成系统B的数据信息格式,并标识好源系统和目标系统,通过信息交换路由模块推送给系统B的客户端,系统B的客户端收到后可以做相应的提示或者显示等处理。

4 结束语

本文给出了基于ZeroMQ的企业信息服务总线在轨道交通运行生产管理系统中的应用方案。实现了轨道交通运行生产管理系统各子系统之间的数据高速通信,系统稳定可靠。同时由于该方案具有智能化、适应不同环境要求、可靠性好、效率高和易于扩展等特点,也可满足多种不同环境的工业系统部署要求,具有良好的应用前景。

猜你喜欢

变位路由总线
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
探究路由与环路的问题
浅析奶牛真胃变位与日粮精粗比关系
多通道ARINC429总线检查仪
变位器在摊铺机车架焊接上的研究应用
奶牛真胃变位的诊断及手术治疗
奶牛真胃左方变位的诊治
PRIME和G3-PLC路由机制对比
WSN中基于等高度路由的源位置隐私保护