[发明专利]一种面向消息的数据分发中间件系统在审
申请号: | 202111526286.3 | 申请日: | 2021-12-14 |
公开(公告)号: | CN114791862A | 公开(公告)日: | 2022-07-26 |
发明(设计)人: | 夏科睿;张韬庚;张成林;涂凡凡;欧福林 | 申请(专利权)人: | 合肥哈工轩辕智能科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 合肥市浩智运专利代理事务所(普通合伙) 34124 | 代理人: | 丁瑞瑞 |
地址: | 236000 安徽省合肥市经济技术*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 消息 数据 分发 中间件 系统 | ||
1.一种面向消息的数据分发中间件系统,其特征在于,包括核心管理模块、命令处理模块、线程管理器及消息处理模块,客户机上内置客户应用程序,服务器上内置监听程序,所述客户机分别与核心管理模块以及命令处理模块连接,核心管理模块分别与命令处理模块、线程管理器及消息处理模块连接,消息处理模块通过监听程序与服务器连接;
客户机以线程的形式发送的请求消息存储在命令处理模块的消息队列中,线程管理器开启线程池,供各种用户应用线程使用;核心管理模块从命令处理模块中的消息队列中取消息送到消息处理模块,消息处理模块有多个,根据消息队列中消息的数量选择开启消息处理模块的数量,监听程序中MsgSrvAccess()函数将消息处理模块发送过来的消息打标签并通知服务器有分配过来的消息,服务器根据消息中的请求内容反馈回复信息给监听程序,监听程序通过消息处理模块将回复信息发送到客户应用程序。
2.根据权利要求1所述的一种面向消息的数据分发中间件系统,其特征在于,所述消息处理模块接收到消息以后,对消息的处理过程为:
步骤a:读取消息头中对消息总长的描述符N;
步骤b:将总长N的消息分为M段,每段消息的长度为N/M;
步骤c:消息处理模块向其P个CPU内核发起请求,请求CPU中断处理;
步骤d:将M段消息放入M个队列中,并设置结束读取的标志位flag;
步骤e:P个CPU读取M个队列,如果P≥M,则M个队列同时读完,标志位flag置位1;
步骤f:如果PM,则先读取前P个队列,再依次读取M-P个队列,直到所有队列读取完成,标志位flag置位1。
3.根据权利要求1所述的一种面向消息的数据分发中间件系统,其特征在于,所述打标签的消息与服务器的配置文件中记载的服务器名、IP、队列和端口相对应,端口和设备的信息对应,打标签的消息发送给服务器以后根据对应的端口取得设备的信息。
4.根据权利要求3所述的一种面向消息的数据分发中间件系统,其特征在于,基于SAX模型解析xml文件的方式读取所述配置文件。
5.根据权利要求4所述的一种面向消息的数据分发中间件系统,其特征在于,读取所述配置文件的过程为:
事件触发,判断节点类型;
如果是节点开始,创建队列,如果不是节点开始,释放队列内存空间;
如果是Req或者Res节点,获取兄弟节点个数,如果不是Req或者Res节点,释放队列内存空间;
获取兄弟节点个数之后判断是否为Select或者Option节点,如果是Select或者Option节点则重新进入节点开始,并且深度加1后,创建一个新的队列,如果不是Select或者Option节点则结束解析过程;其中,Req为请求节点,Res为回复节点,Select为选择节点,Option也为选择节点。
6.根据权利要求3所述的一种面向消息的数据分发中间件系统,其特征在于,所述消息的收发过程为:
读取配置文件;
根据配置文件的参数连接相应的服务器;
判断消息管理器是否停顿,如果是,则等待一个时间周期后继续判断是否停顿,如果不是,则判断是否有待服务器接收的消息,如果有则取消息并解析后放入接收缓冲区,如果没有则判断接收缓冲区是否为空,如果是空则结束线程,如果不为空则取消息并且分类以后重新封装消息;
服务器接收到封装消息以后根据消息的请求内容提取请求内容对应的回复信息发送到客户应用程序;
客户应用程序判断是否有返回数据,如果有则将其接收到返回数据的消息进行消息封装以后放入发送缓冲区,如果没有则判断是否等待超时,如果是,则产生超时消息并放入发送缓冲区,如果不是等待超时则返回上述是否有返回数据的步骤。
7.根据权利要求1所述的一种面向消息的数据分发中间件系统,其特征在于,还包括时间处理模块,所述核心管理模块与时间处理模块连接。
8.根据权利要求7所述的一种面向消息的数据分发中间件系统,其特征在于,所述时间处理模块给客户机发送过来的每个请求消息打上截止时间戳,服务器进行回复消息的时候,如果回复消息的时间不早于这个截止时间就判定系统出现错误并将错误报告给核心管理模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥哈工轩辕智能科技有限公司,未经合肥哈工轩辕智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111526286.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于负载均衡模式异步代理的分布式系统
- 下一篇:具有无源平衡的UPS设备
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置