[发明专利]轻量级跨平台消息中间件的实现方法及系统有效

专利信息
申请号: 201510435554.9 申请日: 2015-07-22
公开(公告)号: CN105007238B 公开(公告)日: 2018-04-24
发明(设计)人: 陈龙 申请(专利权)人: 中国船舶重工集团公司第七0九研究所
主分类号: H04L12/863 分类号: H04L12/863;H04L29/08
代理公司: 武汉河山金堂专利事务所(普通合伙)42212 代理人: 胡清堂
地址: 430205 湖北省武汉市*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 轻量级 平台 消息 中间件 实现 方法 系统
【说明书】:

技术领域

发明涉及计算机通信技术领域,特别涉及一种轻量级跨平台消息中间件的实现方法及系统。

背景技术

消息中间件(MOM,Message-oriented middle-ware)是一种利用高效可靠的消息传递机制进行与平台无关的数据通信,并基于数据通信来进行分布式系统集成的软件。它通过将信息以消息(该消息除包含了应用程序处理所需的数据外还应该包含其它成分,例如消息的发送者、接收者,消息的一些控制信息)的形式,从一个应用程序传送到另一个或多个应用程序。消息中间件在TCP/IP网络体系结构中处于应用层,网络应用程序建立在消息中间件之上,实现各种分布式应用服务。

在使用过程中,现有的消息中间件存在以下问题:

1.嵌入了大量的第三方库,造成使用该消息中间件的应用程序变得体积臃肿,编译速度变慢;

2.通常对Windows和Unix支持较好,对Vxworks平台支持不足;

3.大文件消息传输能力较差,报文传输的长度有限制;

4.使用过程繁琐,消息中间件在通信过程中需要创建、保持和关闭连接,对于需要频繁使用消息中间件的应用,需要不断重复这一过程,增加了开发者的负担。

发明内容

有鉴于此,本发明提供一种轻量级跨平台消息中间件的实现方法及系统。

一种轻量级跨平台消息中间件的实现方法,包括如下步骤:

S1、配置路由表,路由表包括进程ID、IP地址、组播地址路由关系信息,消息中间件根据路由表解析出消息转发控制规则;

S2、初始化应用进程,创建该进程通信所需要的相关资源;

S3、消息队列接收线程实现:调用消息队列接收函数,将消息队列接收线程阻塞,如消息队列收到数据,将数据拷贝至进程专属缓冲区中,并改写消息队列“读“与“写”管道状态;

S4、进程读取数据接口实现:利用POSIX库的I/O复用Select函数,轮询消息队列“写”管道、UDP通信Socket和TCP通信Socket,如收到数据则将数据拷贝至进程专属缓冲区中,并改写消息队列“读“与“写”管道状态;

S5、进程发送数据接口实现:根据发送报文头中的发送进程ID以及预先配置的路由表,判断通信发生在节点间还是节点内;根据发送报文长度,判断通信方式采用UDP还是TCP;

S6、TCP组播线程池的实现:根据预先配置的路由表,解析组播地址中包括的IP地址,创建TCP发送线程池,并通过TCP发送线程池完成多地址TCP报文发送的并行处理。

一种轻量级跨平台消息中间件的实现系统,包括如下模块:

路由表配置模块,用于配置路由表,路由表包括进程ID、IP地址、组播地址路由关系信息,消息中间件根据路由表解析出消息转发控制规则;

进程初始化模块,用于初始化应用进程,创建该进程通信所需要的相关资源;

消息队列接收线程模块,用于调用消息队列接收函数,将消息队列接收线程阻塞,如消息队列收到数据,将数据拷贝至进程专属缓冲区中,并改写消息队列“读“与“写”管道状态;

进程读取数据接口模块,用于利用POSIX库的I/O复用Select函数,轮询消息队列“写”管道、UDP通信Socket和TCP通信Socket,如收到数据则将数据拷贝至进程专属缓冲区中,并改写消息队列“读“与“写”管道状态;

进程发送数据接口模块,用于根据发送报文头中的发送进程ID以及预先配置的路由表,判断通信发生在节点间还是节点内;根据发送报文长度,判断通信方式采用UDP还是TCP;

TCP组播线程池模块,用于根据预先配置的路由表,解析组播地址中包括的IP地址,创建TCP发送线程池,并通过TCP发送线程池完成多地址TCP报文发送的并行处理。

本发明提供的轻量级跨平台消息中间件的实现方法及系统,具有如下优点:

1)使用操作系统自带POSIX库,而非依赖外部第三方库,实现了消息中间件的轻量化;

2)通过I/O复用及管道等技术封装消息队列、UDP、TCP等进程通信方式,屏蔽了以上进程通信方式使用上的差异,实现了通信框架跨平台(Windows、Unix和Vxworks)使用以及通信接口上的统一;

3)使用预设路由表,控制消息转发规则,屏蔽了通信物理位置上的差异。用户只需关心通信的内容,消息中间件可自动处理并选择通信策略,并发送到相应的目的地。

保证了进行通信交互策略的透明性、平台的无关性。

附图说明

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国船舶重工集团公司第七0九研究所,未经中国船舶重工集团公司第七0九研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510435554.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top