基于中间件技术的分布式监测系统研究.pdf

上传人:爱问知识人 文档编号:3581050 上传时间:2019-09-13 格式:PDF 页数:68 大小:2.66MB
返回 下载 相关 举报
基于中间件技术的分布式监测系统研究.pdf_第1页
第1页 / 共68页
基于中间件技术的分布式监测系统研究.pdf_第2页
第2页 / 共68页
基于中间件技术的分布式监测系统研究.pdf_第3页
第3页 / 共68页
基于中间件技术的分布式监测系统研究.pdf_第4页
第4页 / 共68页
基于中间件技术的分布式监测系统研究.pdf_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《基于中间件技术的分布式监测系统研究.pdf》由会员分享,可在线阅读,更多相关《基于中间件技术的分布式监测系统研究.pdf(68页珍藏版)》请在三一文库上搜索。

1、西南交通大学硕士研究生学位论文第1 页 曼曼皇鼍曼曼曼! 蔓曼曼曼曼舅曼曼曼曼曼曼曼曼曼曼皇曼曼寰! 蔓苎l il l lliill 11=l lii l l 皇曼曼曼曼量曼曼曼曼 摘要 随着高速铁路的迅速发展,列车安全成为人们十分关心的问题。为了确保列车的 安全运行,需要进行列车跟踪实验,对列车进行实时监测。由于检测通道多,采样频 率高,短时间内会采集到大量数据。列车监测中的大量数据的存储及转存是列车监测 系统面临的一个问题。采集器采集到的数据一方面要存储起来,另一方面需要及时转 发到车载电脑,以便实时处理,用以分析列车各个设备的运行状况;并且为了实现地 面监测中心对列车的实时远程监测,要求

2、数据能够及时传送到地面。为此本论文针对 列车监测网络设计了一套高效的数据传输系统。 系统主要由采集模块、车载电脑、m a n a g e r 、地面服务端和远程监控中心五部分组 成。采集模块采集数据、存储并发送到车载电脑,车载电脑处理数据并将处理结果发 送到m a n a g e r ,m a n a g e r 通过G P R S 模块转发数据到地面服务端,再由地面服务端转发 到远程监控中心,远程监控中心分析这些数据并向采集模块发送控制命令。如果有必 要,远程监控中心也可以请求某些采集模块的原始数据。 系统通讯的软件实现是基于零消息队列Z e r o M Q 的,Z e r o M Q 有简

3、单、灵活、高效 等诸多优点。车载电脑与m a n a g e r 的通讯、m a n a g e r 与地面服务端的通讯以及地面服务 端与远程监控中的通讯都是由Z e r o M Q 的套接字来实现i 从远程监控端一直到车载电 脑的命令以及从车载电脑一直到远程监控中心的回应都是使用的高级请求回应模式, 利用Z M QX R E P - - Z M QX g E O 套接字对来实现。原始数据及特征值数据的收发使用 的是发布订阅模式,利用Z M QP U B - - Z M QS U B 套接字对来实现。利用三个独立的 线程分别收发这三种数据,以提高整个系统的效率。线程之间的通讯使用信号模式, 利

4、用Z M QP A I I 卜Z M OP A R I 套接字对来实现。 论文开发了远程监控中心、地面服务端、m a n a g e r 以及车载电脑的软件,实现了整 个列车监测系统的通讯。 本文首先介绍了论文的背景、意义以及国内外发展现状,然后对Z e r o M Q 通讯模 式及Z c r o M Q 消息有关事项进行了研究,接着对整个系统结构进行了详细介绍,最后 详细介绍了各个模块通讯的软件实现,并对Z e r o M Q 的通讯性能进行了测试。 关键词:Z e r o M Q ;通讯模式;消息;监测系统;G P R S A b s tr a c t W i t ht h er a p

5、i dd e v e l o p m e n to fh i 曲一s p e e dr a i l ,p e o p l ea r ev e r yc o n c e r na b o u tt r a i n s e c u r i t y I no r d e rt oe n s u r et h es a f eo p e r a t i o no ft r a i n s ,i tn e e dt od om a n yt r a i nt r a c k e x p e r i m e n t s ,t oa c h i e v et r a i nr e a l - t i m e

6、m o n i t o r i n g B e c a u s eo fS Om a n yd e t e c t i o nc h a n n e l a n dt h eh i g hs a m p l i n gf r e q u e n c y , i tw i l lc o l l e c ta l a r g em o u n to fd a t ai nas h o r tp e r i o d I ti sa b i gp r o b l e mt os t o r eo rt r a n s m i tt h el a r g ea m o u n t so fd a t a

7、f o rt h et r a i nm o n i t o r i n gs y s t e m T h ed a t at h ep o r t a b l ed a t at e r m i n a lc o l l e c t e d ,o nt h eo n eh a n dn e e dt ob es t o r e d ,o nt h eo t h e r h a n dn e e dt ob et r a n s m i t t e dt oP Ct ob ep r o c e s si nt i m ea n da n a l y s i st h et r a i ne q

8、 u i p m e n t h e a l t h ;A n di no r d e rt ol e tt h eg r o u n dc o n t r o lc e n t e ra c h i e v et h er e a l t i m er e m o t e m o n i t o r i n g ,t h ed a t am u s tb et r a n s m i t t e dt ot h eg r o u n di nt i m e F o rt h i sp e r p o s e ,t h ep a p e r d e s i g na ne f f i c i

9、e n td a t at r a n s m i s s i o ns y s t e mf o rt r a i nm o n i t o r i n gn e t w o r k T h es y s t e mm a i n l yc o n s i s t so ft h ed a t ac o l l e c t o r , t h eP C ,t h em a n a g e r , t h eg r o u n ds e r v e r a n d 也eg r o u n dc o n t r o lc e n t e r T h ec o l l e c t o rt a k

10、 e sd a t a , r e s t o r e sa n ds e n d si tt ot h eP C T h e P Cc o m p u t e sa n ds e n d st h er e s u l tt ot h em a n a g e r M a n a g e ru s e sG P R Sm o d u l et os e n dt h e r e s u l tt ot h eg r o u n ds e r v e r T h e nt h eg r o u n ds e r v e rs e n di tt ot h eg r o u n dc o n t

11、 r o lc e n t e r I fi ti s n e c e s s a r y , t h eg r o u n dc o n t r o lc a nr e q u e s tt h eo r i g i n a ld a t ao fac o l l e c t o r T h ec o m m u n i c a t i o no ft h es y s t e mi sb a s e do nZ e r o M Q Z e r o M Qi s s i m p l e ,f l e x i b l e , e f f i c i e n ta n dh a v eS Om

12、a n ya d v a n t a g e s T h ec o m m u n i c a t i o nb e t w e e nt h eP Ca n dm a n a g e r , t h ec o m m u n i c a t i o nb e t w e e nm a n a g e ra n dt h e g r o u n ds e r v e r , a n dt h ec o m m u n i c a t i o n b e t w e e nt h eg r o u n ds e r v e ra n dt h eg r o u n dc o n t r o lc

13、 e n t e ri sb a s eo nt h eZ e r o M Qs o c k e t T h e r e q u e s tf r o mt h eg r o u n dc o n t r o lc e n t e rt ot h eP C ,a n dt h er e p l yf r o mt h eP Ct ot h eg r o u n d c o n t r o lc e n t e r i sb a s e do n a d v a n c e d R e q u e s t R e p l y m o d e l ,a n du s e s Z M Q _ X R

14、 E Q Z M Q _ X R E P t o i m p l e m e n t T h e t r a n s c e i v e ro f o r i g i n a l d a t aa n dc h a r a c t e r i s t i c v a l u ed a t ai sb a s e do nP u b l i s h S u b s c r i b em o d e l a n du s e s Z M Q _ P U B - - Z M Q _ _ S U B t oi m p l e m e n tI no r d e rt oi m p r o v et h

15、 ee f f i c i e n c yo ft h es y s t e m ,u s e as i n g l et h r e a df o re a c ho ft h et h r e ed a t at y p e T h ec o m m u n i c a t i o nb e t w e e nt h et h r e a d si s b a s e do ns i g n a lm o d e l ,a n du s e sZ M QP A I I 卜Z M QP A I Rt oi m p l e m e n t T h i sp a p e rh a sd e v

16、e l o p e dt h es o f t w a r eo ft h eP C ,t h em a n a g t h eg r o u n ds e r v e ra n d t h eg r o u n dc o n t r o lc e n t e r F i r s t l y , t h ep a p e ri n t r o d u c e st h et o p i s Sb a c k g r o u n d ,s i g n i f i c a n c ea n dd e v e l o p m e n ti n c h i n ao ro t h e rc o u n

17、 t r y , t h e nr e s e a r c ht h ec o m m u n i c a t i o nm o d e l sa n dm e s s a g eo fZ e r o M Q , a n di n t r o d u c et h ee n t i r e s y s t e m s t r u c t u r ei n d e t a i l L a s t l y , i n t r o d u c e t h es o f t w a r e i m p l e m e n t a t i o no ft h ev a r i o u sm o d u

18、l e so fc o m m u n i c a t i o n ,a n dt e s tt h ec o m m u n i c a t i o n 西南交通大学硕士研究生学位论文第1 I I 页 p e r f o r m a n c eo fZ e r o M Q K e yw o r d s :Z e r o M Q ;c o m m u n i c a t i o nm o d e l ;m e s s a g e ;m o n i t o r i n gs y s t e m ;G P R S 西南交通大学硕士研究生学位论文第页 曼曼曼曼曼曼! 曼! 曼曼曼曼曼曼曼曼曼曼量!

19、曼曼曼! 曼曼鼍曼曼曼曼! 曼曼曼曼I I ;I 一一曼曼鼍曼皇曼曼舅! 曼曼蔓曼蔓曼曼曼曼 目录 第1 章绪论1 1 1 研究背景及意义1 1 2 国内外研究现状2 1 2 1 列车安全监测系统的国内外现状2 1 2 2Z e r o M Q 发展3 1 3Z e r o M O 和同类产品相比4 1 3 1 R a b b i t M Q 4 1 3 :! Z e r o M Q 4 1 3 3A c t i v e M Q ! ; 1 3 4Z e r o M Q 的优点6 1 4 论文的主要工作一8 第二章消息中间件Z e r o M O 9 2 1 消息中间件的定义。9 2 2 消息

20、中间件的特点。9 2 3Z e r o M O 的通讯模式1 0 2 3 1 请求回应模由1 0 2 3 2 发布订阅模式12 2 3 3 管道模式13 2 3 4 信号模式1 4 2 4Z e r o M O 的消息16 第三章系统设计。1 8 3 1 列车监测系统结构1 8 2 2 系统各个功能模块- 。1 9 3 2 1 采集模块19 3 2 2 车载电脑2 0 3 2 :;m a n a g e r 21 3 2 4G P R SD T U 模块2l 3 2 5 地面服务端2 3 3 2 6 地面监控中心2 4 3 3 利用Z e r o M O 实现通讯2 4 3 3 1 系统通讯原

21、理2 4 3 3 2 利用多线程实现2 5 西南交通大学硕士研究生学位论文第V 页 曼I I I I 皇曼舅曼鼍曼! 曼曼曼曼罡 3 3 3 监控中心使用超时重发机制2 5 3 4 通讯模式的选择2 5 3 4 1 收发指令的通讯模式2 6 3 4 2 特征值数据及原始数据通讯模式。2 7 3 4 3 线程间的通讯模式2 9 3 5IP 地址的设置3 0 3 6 开发平台3 0 第四章系统通讯的软件实现3 2 4 1 实现方法3 2 4 1 1 对动态链接库的封装3 2 4 1 2 通过心跳机制判断对方是否下线3 3 4 2 消息的封装格式3 3 4 2 1 远程监控中心与车载电脑间指令的消息

22、封装格式3 4 4 2 2m a n a g e r 与车载电脑间指令的消息封装格式一3 6 4 2 3 车载电脑之间指令的消息封装格式3 7 4 2 4m a n a g e r 与地面服务端心跳的封装格式3 8 4 3 各个模块通讯的程序实现3 8 4 3 1 m a n a g e r 的实现一3 8 4 3 2 车载电脑的实现4 4 4 3 3 地面服务端的实现4 9 4 3 4 远程监控中心的实现5 2 第五章试验调试5 5 5 1Z e r o M Q 通讯性能测试5 5 5 2m a n a g e r 对车载电脑在线信息的监测5 5 结论? 5 8 致谢5 9 参考文献6 0

23、攻读学位期间发表的学术论文6 3 西南交通大学硕士研究生学位论文第1 页 皇曼曼曼曼毫曼曼曼鼍曼曼曼毫I I 一, I l 鼍皇! 皇曼曼舅曼蔓 1 1 研究背景及意义 第1 章绪论 2 0 0 7 年1 月2 8 日,我国首趟投入运营的高速铁路列车C R H 动车组,从杭州站开 出,驶往上海南站,我国高速铁路以此为起点,进入全新的列车时代。“C H R “ 是我国 时速2 0 0 公里及以上动车组统一采用的简称,这是“中国铁路高速”( C h i n aR a i l w a y H i g h s p e e d ) 英文字母的缩写,意为“中国铁路高速列车”。2 0 0 7 年1 2 月2

24、 2 日,首例 时速3 0 0 公里的“和谐号动车组列车C R H 2 3 0 0 又在南车四方机车车辆有限公司下 线,是当时运营速度最高的动车组之一。时隔两年半,2 0 1 0 年5 月2 7 日,具有我国 自主知识产权,时速可达3 8 0 公里的新一代高速列车“和谐号“ 3 8 0 A 首辆车在我国北 车长春客车股份有限公司下线。“和谐号”3 8 0 A 运营时速为3 5 0 公里,最高运营时速 是3 8 0 公里,是当今世界运营时速最高的列车【2 】。中国是世界上高速铁路发展最快、 系统技术最全、集成能力最强、运营里程最长、运营速度最高、在建规模最大的国 家【3 】o 。 “一”黔 一?

25、 7 ”翟弩啊磐鬻 , , 图卜1 中国动车组 由于列车运行速度的大幅度提高,列车安全问题就十分重要。自列车提速以来, 全路运营的提速列车遇到各种问题。高速列车的特点是速度快、停靠车站少、连续运 行时间长,这些特点使车辆各个部件的使用寿命收到了很大的影响,经常出现各种故 障。常见的故障有“车辆运行中的轮对故障“、”制动和空气弹簧系统故障“、转向架 西南交通大学硕士研究生学位论文第2 页 以及中央悬挂装置的故障”、“车辆蛇形运动“ 等【4 5 】。特别是去年7 月2 3 日,D 3 0 1 动 车组与D 3 1 1 5 动车组在温州的追尾事件,造成大量人员伤亡,是铁路上的又一重大交 通事故。 中

26、国高速列车走到世界前列,没有国外经验可以借鉴,迫切需要通过大量的试验 数据,掌握列车动力学特性和状态演变规律。为了系统分析气候、线路条件、运行里 程等因素对列车服役性能的影响,在系统分析动车组耐久性试验数据的基础上,选择 高速动车组在服役过程中有关安全性、结构可靠性、舒适度以及与运行状态有关的设 备进行日常检测、分解检测,对关键项点进行跟踪监测和试验,掌握列车在实际载客 运营状态下各监测项点参数随服役时间变化而产生的参数变化趋势,对关键系统的性 能、可靠性及安全性问题进行研究,为优化高速列车设计及制定合理的检修维护周期 提供依据,进而建立关键部件随服役时间变化的数据库,为新一代高速列车的开发提

27、 供理论支持【6 】。 1 2 国内外研究现状 1 2 1 列车安全监测系统的国内外现状 列车关键部件状态监测和故障诊断系统是铁路行车安全保障体系的重要组成部 分,国外高速铁路均以列车监测、诊断系统作为其安全可靠运行的基础,目前发达国 家运行的高速列车大都有车载运行安全的实时监测系统。如欧洲和日本在转向架上装 有传感器实时记录和监测车辆在高速运行过程中是否出现蛇行运动以及其它动力学参 数的变化情况,其中英国A E A 在客车上安装传感器监测车辆的振动状况;法国B a n b a d i 正在研究在构架上安装传感器监测车辆是不是出现蛇行运动;日本9 0 年代末就提出要 将机械系统的故障诊断当作研

28、究的重点,S K F 提出利用轴承振动与轴温来监测轮轴系 统的工作状态;法国正着力于研究B C M S y s t e m ,即“转向架状态监视系统”;德国I C E 上装有转向架预警系统( E a r l yW a r n i n gs y s t e m ) ;在法国T G V 线上,每隔4 0 5 0 k i n 就安 装一个热轴报警器,测量轴承温度变化过程、升高速率和绝对温度等等。这些实时安 全监测系统能够及时发现列车上出现的安全隐患问题,为列车安全运行提供保障,同 时具有一定的预警功能,发现列车中存在的潜在危险【7 J 。 我国在列车监测系统方面也做了很多工作,比如红外线轴温监控系统

29、。除此之外, 还研制了许多与机车运行有关的辅助安全信息监测设备及信息传输设备,这些设备都 开始试验或局部运用,如轨道动态监测设备,T M I S ( 铁路运输管理信息系统) 及D M I S ( 铁路调度指挥系统) 列车运行信息传输设备等。但是,由于这些设备由不同的单位 生产研制,在机车上分散安装,系统性不强,资源浪费大,不便于分析和统一管理】。 西南交通大学硕士研究生学位论文第3 页 并且数据通常是直接在列车上存储,没有及时发送到地面,这样不方便工程师们对列 车实现的实时监控,不能及时发现列车部件的问题。 为了解决各个模块分散不能形成一个统一整体的问题,可以采用分布式系统来实 现。而各个模块

30、可能在不同的平台上开发,开发语言也可能不一样,为了屏蔽平台和 语言的差异,可以采用中间件技术。所以本文设计了一套基于中间件技术的分布式列 车监测系统。该分布式系统是将系统中分散的基本功能单元( 车载电脑、m a n a g e r 、监 控中心等) ,通过网络互联起来,构成一个分布式的自动测试系统。分布式系统包括两 大部分:一部分是组成系统的各基本单元,测试仪器,测试模块和计算机;一部分是 连接各基本单元形成系统的传输介质通信网络。系统以网络为基础,将分布于各地的 不同设备挂接在网络上,进行数据传输,实现资源共享,协调工作,共同完成测试任 务【9 】o 中间件是一种独立的系统软件或服务程序,分

31、布式应用软件借助这种软件在不同 的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算机资源和 网络通讯l l 。 中间件种类繁多,为了实现数据在列车和地面间的传输,自然选择消息中间件。 综合考虑本文选择了利用消息中间件Z e r o M Q C “】来构建这个分布式监测系统。通常网 络交互使用的是基于T C P I P 协议的B e r k e l e y 套接字( B S D ) 。人们对B S D 套接字的了 解较多的是点对点的连接。点对点连接需要显式地建立连接、销毁连接、选择协议 ( T C P U D P ) 和处理错误等I l2 1 。这些都让编程变得复杂。并且,使用T

32、 C P I P 需要向下 和向上遍历网络栈,这样导致数据传输效率降低。而Z e r o M Q 会自动完成建立连接, 撤销连接,以及重新连接等,并且会自己处理好缓存和组帧等【1 3 】,这就使我们的编程 变得更简单,更安全。Z e r o M Q 交互是面向消息的【1 4 1 。它将人们每天为应用程序周而 复始地进行的例行消息处理封装起来。这意味着如果当客户端套接字【l5 】发送一条 1 5 0 K B 大小的消息时,服务端套接字无需显式处理任何缓存( b u f f e r ) 或组帧,即能接 接收到一条完整而相同的消息【l6 1 。Z e r o M Q 使用消息分批发送,直接端到端地发

33、送数 据,这就大大提高了传输速率。Z e r o M Q 实现了3 0 微秒的端到端延迟和每秒超过3 0 0 万的信息。Z e r o M Q 可用于C 、C + + 、P y t h o n 、N E T M o n o 、F o r t r a n 和J a v a 语言。它 运行在A I X ,F r e e B S D 的,基于H P U X ,L i n u x 和M a c O S 下, O p e n B S D 系统, O p e n V M S ,Q N XN e u t r i n O , S o l a r i s 和W i n d o w s 操作系统【1 7 J 。

34、1 2 2Z e r o M O 发展 i M a t i x 公司,A M Q P 协议的制定者,在2 0 1 0 年退出了A M Q P 工作组,其C E OP i e t e r H i n t j e n s 认为A M Q P 从根本上就有不可修改的缺陷,太复杂了,目前转而支持Z e r o M Q , 西南交通大学硕士研究生学位论文第4 页 i M a t i x2 0 1 1 年后不再维护其A M Q P 软件O p e n A M Q P 【l 引。Z e r o M Q 是三十多位作者历经 三年开发的自由软件,2 0 0 9 年下半年才推出他的第一个版本1 O 1 。经过两年

35、多的发展, 迄今为止已经推出了版本3 1 0 ,可以说Z e r o M Q 发展的相对比较完善。 Z e r o M Q 看起来像是嵌入的网络库,但行为像一个并发的框架【1 9 】。它提供带所有 信息并且跨各种传输协议如进程间,进程内,广播等的套接字。可以用多种方式实现 N 对N 的套接字连接,如扇出,发布订阅,请求应答。它足够快,因此可以制作集群。 他的异步输入输出模式为你提供了可扩展的多核应用,用来处理异步消息任务。它提 供很多语言的套接字,并且能够在很多操作系统上运行。 起初,有人把Z e r o M Q 用于开发W e b 服务器,比如Z e dS h a w 开发的网页服务器 M

36、o n g r e l 2 就是基于Z e r o M Q 的。现在Z e r o M Q 这个轻量级的消息队列被越来越多的人 关注,因为它简单,高性能,很多做网络通讯项目的人都密切关注着这个新兴产品。 有专业人士分析,Z e r o M Q 是搭建被视为科技业下次革命的云计算的环境最好的通讯 库,因为云计算本质上来说是分布式计算,并行、多核、分布式,让计算能力不断的 被扩展扩展,让数据不断地被分区分区,强大的计算能力被堆出来,这就是云计算, 而Z e r o M Q 是高性能的分布式消息中间件,对服务器群集和超级计算来将都足够快, 用它来实现云计算会大大提高效率。Z e r o M Q 正在

37、不断完善,性能也越来越稳定,使用 者越来越多i 势必会成为通讯网络的主流软件之一。 1 3Z e r o M O 和同类产品相比 1 3 1R a b bit M O R a b b i t M Q 利用E r l a n g 开发的,支持完善的高级消息队列协议( A M Q P ,A d v a n c e d M e s s a g eQ u e u i n gP r o t o c 0 1 ) ;支持消息持久化和崩溃恢复,应用程序在重新启动之后消 息不会丢失。它通过代理的模式实现分布式系统,即消息在发送给客户机之前会在中 央节点排队。这种模式使R a b b i t M Q 很容易使用和

38、部署,由于模式很多高级的技术比如 路由、符合均衡或者持久消息排队只用几行代码就可以写完了。然而,也是由于使用 代理使系统的规模伸缩性会比较差,并且会降低系统效率,因为中央节点增加了延迟 也导致消息的封装更复杂【2 0 】。 1 3 2Z e r o M O Z e r o M Q 也支持高级消息队列协议( A M Q P ) ,是很轻量级的消息队列,没有消息 服务器来存储和转发消息,把侧重点放在点对点的消息传输上。Z e r o M Q 在发送端缓存 西南交通大学硕士研究生学位论文第5 页 皇曼! 曼曼曼曼曼曼皇曼曼曼曼曼曼! 曼曼曼m l _ i i _ 一_ _m m ii I 蔓曼曼曼曼

39、曼曼曼曼鼍曼! 曼曼曼曼曼曼曼 消息,并通过设置水位来控制缓存【2 1 1 。Z e r o M Q 支持很多高级的消息对象,但是与 R a b b i t M Q 相反,你需要自己实现系统的各个部分。它利用C 语言开发,重点在于效率。 主要用于设计高吞吐量以及低延迟的情况,比如金融市场。然而,Z e r o M Q 刚推出不久, 还是很成熟,不支持消息持久化及崩溃恢复,且稳定度较差。 1 3 3A c tiv e M Q A c t i v e M Q 支持流文本定向消息协议( S T O M P ,S t r e a m i n gT e x tO r i e n t a t e dM e

40、 s s a g e P r o t o c 0 1 ) ,有很长的使用历史,并且被广泛使用。介于R a b b i t M Q 和Z e r o M Q 之间。它 既像Z c r o M Q 一样实现有代理及P 2 P 的拓扑结构,又像R a b b i t M Q 一样很容易实现很 多高级的技术,但是常常是以它的性能为代价,这对消息传输来说是一个很严重的问 题。 总体来看,A c t i v e M Q 虽然使用历史最久,但是由于它本身固有一些问题,并且性 能比较低,所以对大多数的案例并不是很实用;R a b b i t M Q 发展的比较成熟,支持完善 的h M Q P , 适用于对稳定

41、性和可靠性要求比较高的案例;Z e r o M Q 刚推出不久,稳定性 及可靠性不如R a b b i t M Q ,但是性能却远远高于同类产品,有资料 2 2 】显示如图1 2 所示。 05 0 0 0 01 0 l O 。02 0 0 c o O2 S o D3 0 ) 0 03 5 D o 图1 2 几种中消息队列性能比较 lllj 矿 西南交通大学硕士研究生学位论文第6 页 1 3 4Z e r o M Q 的优点 除了与同类产品相比的高性能,Z e c o M Q 还有很多其它的优点: 1 、简单 与原始的s o c k e tA P I 相比,Z M Q 把很多东西都封装好了。传统

42、的T C P 是基于字 节流进行收发,因此程序员常常要自己去处理数据块与数据块之间的边界( 断界处理) ; 与之相对,Z M Q 是以消息为单位进行收发,它确保你每次发出收到的,都是一个消 息块。这样一来,就省却了不少代码量。同时Z e r o M Q 把异步,缓冲区,多线程这些 技术也封装好了。并且,Z e r o M Q 的A P I 接口很少,风格上类似于B S DS o c k e t ,这样对 于使用过s o c k e t A P I 的程序员来说上手Z e r o M Q 很容易【2 3 】。 I M e s s a g es i z eM e 。g 。b 啦 l l M e s

43、 s a g eb o d y l 10 x f f M e s s a g es i z e _ 。 图1 - 3 Z c r o M Q 的消息格式 2 、支持多种通信环境 Z e r o M Q 支持四种底层通信方式。Z e r o M Q 的地址格式是“t r a n s p o r t :e n d p o i n t , 其中”t r a n s p o r t ”描述的是底层通讯方式,”e n d p o i n t 描述的是连接端E l 。线程间通信 ( i n p r o c ) :这种模式直接通过内存在共享一个上下文环境的线程间传递消息,在设置 i n p r o c 方式地址格式的时候”t r a n s p o r t 部分设置为”i n p r o c ”,“e n d p o i n t ”可以是任意的字 符串,唯一的要求是这个字符串在套接字所在的上下文环境内唯一,例如 ”i n p r o c :m y - e n d p o i n t ”。进程间通信( i p c ) :利用依赖系统的进程间通讯机制在进程间传 送消息,这种消息传送方式只适合支持U N I X 域名套接字的操作系统。在设置i p c 方式 地址格式的时候,”t r a n

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育


经营许可证编号:宁ICP备18001539号-1