一种支持跨网传输的分布式消息分发系统和方法技术方案

技术编号:35896565 阅读:46 留言:0更新日期:2022-12-10 10:30
一种支持跨网传输的分布式消息分发系统,包括:消息处理服务器,用于消息监听、接收、处理与分发;消息缓存服务器,用于消息进行缓存,将消息传送至消息处理服务器、代理服务器;负载均衡服务器,用于将消息发送请求,均衡至各台消息处理服务器;数据库服务器,用于支持消息存储;代理服务器,用于消息缓存服务器与数据库网闸前置机间的消息格式转换与同步;数据库网闸服务器,用于对安防网到移动警务网的数据表,对移动网到安防网的数据表进行单向同步;ftp网闸服务器,支持对安防网和移动网间的文件,分别进行单向摆渡。本发明专利技术解决了安防网内PC端与移动警务网内APP在同一系统中进行实时消息交互成为困难的问题。时消息交互成为困难的问题。时消息交互成为困难的问题。

【技术实现步骤摘要】
一种支持跨网传输的分布式消息分发系统和方法


[0001]本专利技术涉及的是通信领域,特别涉及一种支持跨网传输的分布式消息分系统和方法。

技术介绍

[0002]随着目前移动互联网技术的快速发展,安防行业对智能化移动终端的应用日趋成熟,实时消息交互在安防日常街面巡防、应急指挥方面尤其重要。对于安防业务,出于网络安全考虑,安防信息网和移动警务网分处于两张不同的网络,两网内的客户端要进行实时消息交互,对于传统的实时消息交互系统,需要在两网间开放端口,实现消息通讯,但这与安防网络安全规范相违背,由此,安防网内PC端与移动警务网内APP在同一系统中进行实时消息交互成为困难。

技术实现思路

[0003]鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种支持跨网传输的分布式消息分发系统和方法。
[0004]为了解决上述技术问题,本申请实施例公开了如下技术方案:
[0005]一种支持跨网传输的分布式消息分发系统,包括:消息处理服务器、消息缓存服务器、负载均衡服务器、数据库服务器、代理服务器、数据库网闸服务器和FTP网闸服务器;其中,
[0006]消息处理服务器,用于消息监听、接收、处理与分发;
[0007]消息缓存服务器,用于消息进行缓存,将消息传送至消息处理服务器、代理服务器;
[0008]负载均衡服务器,用于将消息发送请求,均衡至各台消息处理服务器;
[0009]数据库服务器,用于支持消息存储;
[0010]代理服务器,用于消息缓存服务器与数据库网闸前置机间的消息格式转换与同步;将消息缓存服务器中的消息同步至数据库表,或者将数据表中的消息同步至消息缓存服务器;
[0011]数据库网闸服务器,用于对安防网到移动警务网的数据表,和对移动网到安防网的数据表进行单向同步,实现消息的跨网传输;
[0012]ftp网闸服务器,支持对安防网和移动网间的文件,分别进行单向摆渡。
[0013]进一步地,消息处理服务器包括HTTP消息模块、第一缓存监听模块和WebSocket消息模块;其中:
[0014]HTTP消息模块,接收来自PC及APP端的消息请求,并转换消息协议格式,发送至消息缓存服务器,并同时写至数据库,进行存储;
[0015]第一缓存监听模块,用于对消息缓存服务器进行监听,当有新消息到来时,触发监听事件,从消息缓存服务器获取消息,并发送至WebSocket消息模块;
[0016]WebSocket消息模块,用于解析消息格式、接收对象,将消息发送至连接在此消息处理服务器上的PC或APP客户端。
[0017]进一步地,代理服务器包含第二缓存监听模块和消息格式转换模块;其中:
[0018]第二缓存监听模块,用于对移动网中的消息缓存服务器、安防网中的数据库服务器二方分别进行监听,并从两方中的一方获取数据;
[0019]消息格式转换模块,用于将移动网和安防网内需要跨网的消息,进行格式转换,写至数据库前置服务器的相应数据表中,通过数据表摆渡至对端网络,对数据库网闸服务器中的数据表进行监听,获取消息并进行消息格式转换,发送至消息缓存服务器;
[0020]本专利技术还公开了一种支持跨网传输的分布式消息分发方法,跨网传输包括:安防网向移动网传输和移动网向安防网传输;其中:
[0021]当安防网向移动网传输时,首先运行安防网内消息处理服务器,然后运行安防网内代理服务器,其次运行移动网内代理服务器,最后运行移动网内消息处理服务器;
[0022]当移动网向安防网传输时,首先运行移动网内消息处理服务器,然后运行移动网内代理服务器,其次运行安防网内代理服务器,最后运行安防网内消息处理服务器。
[0023]进一步地,安防网内消息处理服务器的运行步骤包括:
[0024]步骤301.服务器启动,接收来自负载均衡服务器分发的HTTP消息请求,进入步骤302;监听消息缓存服务器队列msg_g、msg_m,当有新消息到来,进入步骤304;
[0025]步骤302.解析消息,写入数据库进行存储,进入步骤303;
[0026]步骤303.将消息推送给消息缓存服务器队列msg_g,进入步骤304;
[0027]步骤304.当缓存消息队列有新消息加入,从队列获取新消息,进入步骤305;
[0028]步骤305.判断此消息是否来源于队列msg_m,如果是,则进入步骤306;如果否,则进入步骤308;
[0029]步骤306.查询消息入库缓存标记,判断消息是否已经入库,如果是,则进入步骤308;如果否,则进入步骤307;
[0030]步骤307.对收到的消息进行解析,写入数据库进行存储;
[0031]步骤308.解析消息结构,根据消息接收者字段,将消息以websocket方式,推送至当前连接在服务器上的对应的客户端,结束流程。
[0032]进一步地,移动网内消息处理服务器的运行步骤包括:
[0033]步骤401.服务器启动,接收来自负载均衡服务器分发的HTTP消息请求,进入步骤402;监听消息缓存服务器队列msg_g、msg_m,当有新消息到来,进入步骤404;
[0034]步骤402.将消息推送给消息缓存服务器队列msg_m,进入步骤403;
[0035]步骤403.当缓存消息队列有新消息加入,从队列获取新消息,进入步骤404;
[0036]步骤404.解析消息结构,根据消息接收者字段,将消息以websocket方式,推送至当前连接在服务器上的对应的客户端,结束流程。
[0037]进一步地,安防网内代理服务器的运行步骤包括:
[0038]步骤501.监听消息缓存服务器队列msg_g,监听数据库网闸前置机数据库表m2g,进入步骤502;
[0039]步骤502.当有新消息进入队列及数据库表时,触发消息事件,获取新消息,进入步骤503;
[0040]步骤503.解析消息格式,判断消息是否来自于队列msg_g,如果是,则进入步骤504,否则进入步骤505;
[0041]步骤504.转换消息格式,将消息写入数据库网闸前置机数据库表g2m中,利用网闸将消息摆渡至移动网,流程结束;
[0042]步骤505.转换消息格式,将消息发送至消息缓存服务器队列msg_m中,供消息处理服务器进行消费,进而分发至客户端,流程结束。
[0043]进一步地,移动网内代理服务器的运行步骤包括:
[0044]步骤601.监听消息缓存服务器队列msg_m,监听数据库网闸前置机数据库表g2m,进入步骤602;
[0045]步骤602.当有新消息进入队列及数据库表时,触发消息事件,获取新消息,进入步骤603;
[0046]步骤603.解析消息格式,判断消息是否来自于队列msg_m,如果是,则进入步骤604,否则进入步骤605;
[0047]步骤604.转换消息格式,将消息写本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持跨网传输的分布式消息分发系统,其特征在于,包括:消息处理服务器、消息缓存服务器、负载均衡服务器、数据库服务器、代理服务器、数据库网闸服务器和FTP网闸服务器;其中,消息处理服务器,用于消息监听、接收、处理与分发;消息缓存服务器,用于消息进行缓存,将消息传送至消息处理服务器、代理服务器;负载均衡服务器,用于将消息发送请求,均衡至各台消息处理服务器;数据库服务器,用于支持消息存储;代理服务器,用于消息缓存服务器与数据库网闸前置机间的消息格式转换与同步;将消息缓存服务器中的消息同步至数据库表,或者将数据表中的消息同步至消息缓存服务器;数据库网闸服务器,用于对安防网到移动警务网的数据表,对移动网到安防网的数据表进行单向同步,实现消息的跨网传输;ftp网闸服务器,支持对安防网和移动网间的文件,分别进行单向摆渡。2.如权利要求1所述的一种支持跨网传输的分布式消息分发系统,其特征在于,消息处理服务器包括HTTP消息模块、第一缓存监听模块和WebSocket消息模块;其中:HTTP消息模块,接收来自PC及APP端的消息请求,并转换消息协议格式,发送至消息缓存服务器,并同时写至数据库,进行存储;第一缓存监听模块,用于对消息缓存服务器进行监听,当有新消息到来时,触发监听事件,从消息缓存服务器获取消息,并发送至WebSocket消息模块;WebSocket消息模块,用于解析消息格式、接收对象,将消息发送至连接在此消息处理服务器上的PC或APP客户端。3.如权利要求1所述的一种支持跨网传输的分布式消息分发系统,其特征在于,代理服务器包含第二缓存监听模块和消息格式转换模块;其中:第二缓存监听模块,用于对移动网中的消息缓存服务器、安防网中的数据库服务器二方分别进行监听,并从两方中的一方获取数据;消息格式转换模块,用于将移动网和安防网内需要跨网的消息,进行格式转换,写至数据库前置服务器的相应数据表中,通过数据表摆渡至对端网络,对数据库网闸服务器中的数据表进行监听,获取消息并进行消息格式转换,发送至消息缓存服务器。4.一种支持跨网传输的分布式消息分发方法,其特征在于,跨网传输包括:安防网向移动网传输和移动网向安防网传输;其中:当安防网向移动网传输时,首先运行安防网内消息处理服务器,然后运行安防网内代理服务器,其次运行移动网内代理服务器,最后运行移动网内消息处理服务器;当移动网向安防网传输时,首先运行移动网内消息处理服务器,然后运行移动网内代理服务器,其次运行安防网内代理服务器,最后运行安防网内消息处理服务器。5.如权利要求4所述的一种支持跨网传输的分布式消息分发方法,其特征在于,安防网内消息处理服务器的运行步骤包括:步骤301.服务器启动,接收来自负载均衡服务器分发的HTTP消息请求,进入步骤302;监听消息缓存服务器队列msg_g、msg_m,当有新消息到来,进入步骤304;步骤302.解析消...

【专利技术属性】
技术研发人员:窦强
申请(专利权)人:武汉众智数字技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1