[发明专利]一种基于NIO异步线程模型的异构应用间通信方法在审
申请号: | 202211239335.X | 申请日: | 2022-10-11 |
公开(公告)号: | CN115914330A | 公开(公告)日: | 2023-04-04 |
发明(设计)人: | 张夏豪;杨岩;张乙;于捷杰;王昊;黄旻亮;孙彬;金晓雪;张成花;耿斌;王康 | 申请(专利权)人: | 中国电子科技集团公司第二十八研究所 |
主分类号: | H04L67/141 | 分类号: | H04L67/141;H04L67/145;H04L67/54;H04L67/563;H04L67/568;H04L69/22;H04L69/321 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 胡建华 |
地址: | 210046 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 nio 异步 线程 模型 应用 通信 方法 | ||
本发明公开了一种基于NIO异步线程模型的异构应用间通信方法,本发明针对大型集成信息系统中应用软件跨语言开发,跨操作系统,且应用间需要针对不同业务场景需求进行实时通信的特点,结合了现有的通信协议与技术,提出了一种基于NIO异步线程模型的异构应用间通信方法,提供了一种高效的应用间通信模型,为应用层提供了点对点,订阅发布,共享内存等多种通信方式,并提供了断线重连与消息缓存机制,解决了异构跨平台(Windows、Linux)应用间实时通信的问题,实现了大型集成信息系统中应用间高效可靠的通信能力。
技术领域
本发明涉及一种异构应用间通信方法,特别是一种基于NIO异步线程模型的异构应用间通信方法。
背景技术
随着用户对软件的功能及数据的需求日益复杂,大量的软件应用将参与集成,且参与集成的应用之间需要具备实时通信的能力,并应该具备多种通信方式以适用于不同的业务场景,而这些软件应用都由多种不同语言和工具开发而成,或运行在不同操作系统,无法通过现有技术实现直接通信,且不同异构应用之间,如果一开始没有约定好通信方式,就无法进行良好的数据通信,后期如果需要通信则需要投入较高的开发成本。在一些特殊环境(浏览器、MFC、QT等环境)和特殊领域(混合应用集成领域)中,目前业界已存在的方案无法完全满足应用间实时通信的能力,本专利针对无法满足的情况进行了补充,相较于业界通用技术增加了浏览器、MFC、QT等环境应用间实时通信的高效可靠的解决方案。
目前异构应用程序之间直接通信大多通过服务器中转的技术实现。在大型集成信息系统中,通过服务器中转的方式将有大量应用接入。Socket套接字是一种常用的跨平台通信机制,若使用Socket技术通过服务器中转的方式实现异构应用间通信,服务器将面临庞大数量的Socket连接,使用传统的阻塞I/O多线程模型会为一个连接创建一个线程,虽然这种模式处理数据很及时,但创建了大量的线程,将会占用大量系统资源,若线程暂时无数据可读,会一直阻塞,降低系统资源利用率,导致实时性、稳定性降低。
NIO(Non-blocking IO)通信方式当线程从通道内进行读写数据时,若没有数据可用,则执行其他任务。多路复用监听器可以将NIO的空闲时间用于执行其他连接的I/O操作。使用多路复用监听器可以让一个线程监听多个Socket描述符的事件并进行处理,与传统阻塞I/O多线程模式相比能够大量减少的服务器线程数量。当多路复用监听器监听到事件发生时,返回所有就绪事件的集合。因此,基于NIO方式使用多路复用的线程模型具有高效灵活,资源利用率高的特点,本专利使用NIO异步线程模型,针对多种特殊环境(浏览器、MFC、QT等)实现了异构应用间点对点,订阅发布及共享内存三种不同业务场景的通信方式,并设计实现了一种断线重连和消息缓存机制。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于NIO异步线程模型的异构应用间通信方法。
为了解决上述技术问题,本发明公开了一种基于NIO异步线程模型的异构应用间通信方法,包括以下步骤:
步骤1、启动数据通信中台;所述数据通信中台是支持异构应用间通信的核心模块,包括事件监听模块、事件处理模块以及消息解析模块;启动数据通信中台,启动所述事件监听模块中的连接事件监听器,开始监听应用的连接;
步骤2、注册应用;启动应用并加载数据通信中间件,所述数据通信中间件针对不同开发语言的应用之间的通信提供统一的通信调用接口,所述数据通信中间件包括:应用注册接口、发布订阅接口、点对点通信接口、共享内存接口、消息回调队列、消息处理模块、断线重连机制以及消息缓存机制;调用数据通信中间件中的应用注册接口注册应用后,数据通信中台即监听到应用连接事件,将所述应用的名称及应用连接描述符添加到应用注册表中,并将所述应用连接的读事件注册至事件监听模块中的读事件监听器;所述的注册应用的过程是异步的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第二十八研究所,未经中国电子科技集团公司第二十八研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211239335.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种边缘计算系统中神经网络模型分割与资源分配方法
- 下一篇:一种警示装置