一种基于中间程序的异构系统集成方法及异构系统技术方案

技术编号:34901048 阅读:9 留言:0更新日期:2022-09-10 14:06
本发明专利技术涉及一种基于中间程序的异构系统集成方法及异构系统,方法包括:S10、中间程序接收至少一个第一客户端发送的第一监听信息,第一监听信息包括需要监听的通道标识;S20、中间程序基于通道标识锁定与通道标识对应的处理线程,接收第二客户端发送的该通道标识的更新信息,并将更新信息添加在通道标识所属的key队列链表的尾部,且第二客户端为周期性发送所述通道标识对应的更新信息;S30、中间程序基于更新的该通道标识的key队列链表向所述第一客户端反馈,以及解除该通道标识对应的处理线程的锁定。上述方法结构简单,统一各系统间的通信方式,无需创建数据库和表结构,在数据传输中具有实时性高可靠性高的优势。传输中具有实时性高可靠性高的优势。传输中具有实时性高可靠性高的优势。

【技术实现步骤摘要】
一种基于中间程序的异构系统集成方法及异构系统


[0001]本专利技术涉及数据集成技术,尤其涉及一种基于中间程序的异构系统集成方法及异构系统。

技术介绍

[0002]在工业自动化和控制软件项目中,通讯方式和通讯协议的多样化难题变得越来越明显,工程技术人员需要找到一种合适的方式解决异构系统之间的互连通信难题。
[0003]现有的软件系统由C#、C++、Java等编程语言开发,当系统之间需要数据交互时,通常需要定制交互接口,现有的接口通信方式一般是通过实时数据库虚位号、关系数据库、自定义API等。其接口复杂,开发困难,可靠性差。即,针对每一个系统定制适合的通信方式,存在需要重复组态、工作量大、数据传输量少,开发困难,可靠性差,部署、结构复杂等问题。

技术实现思路

[0004](一)要解决的技术问题
[0005]鉴于现有技术的上述缺点、不足,本专利技术提供一种基于中间程序的异构系统集成方法及异构系统。
[0006](二)技术方案
[0007]为了达到上述目的,本专利技术采用的主要技术方案包括:
[0008]第一方面,本专利技术实施例提供一种基于中间程序的异构系统集成方法,异构系统包括多个需要交互信息的客户端,任意两个客户端的信息交互借助于中间程序实现,所述中间程序中存储各个客户端间交互的信息;方法包括:
[0009]S10、中间程序接收至少一个第一客户端发送的第一监听信息,所述第一监听信息包括需要监听的通道标识;
[0010]S20、中间程序基于所述通道标识锁定与该通道标识对应的处理线程,以及;
[0011]接收第二客户端发送的该通道标识的更新信息,并将所述更新信息添加在通道标识所属的key队列链表的尾部,且所述第二客户端为周期性发送所述通道标识对应的更新信息;
[0012]S30、中间程序基于更新的该通道标识的key队列链表向所述第一客户端反馈,以及解除该通道标识对应的处理线程的锁定。
[0013]可选地,S20中的中间程序基于所述通道标识锁定与该通道标识对应的处理线程之后,还包括:
[0014]所述中间程序接收所述第二客户端发送的修剪指令,并通道标识所属的key队列链表进行修剪,使所述key队列链表的长度在预设长度以内。
[0015]可选地,第一客户端、第二客户端分别为下述系统中的一种:
[0016]PID回路健康管理与优化系统;
[0017]APC先进过程控制系统;
[0018]AAS高级报警管理系统;
[0019]Direct智能操作导航系统。
[0020]可选地,所述S10之前,所述方法还包括:
[0021]S00、所述第一客户端与所述第二客户端交互,获取用于监听的位号下的通道标识。
[0022]可选地,所述S30中的中间程序基于更新的该通道标识的key队列链表向所述第一客户端反馈;
[0023]中间程序基于该通道标识的key队列链表,从key队列链表的表头信息发送第一客户端。
[0024]可选地,所述S30还包括:
[0025]中间程序接收到第一客户端发送的指令监听解除信息,则解除该通道标识对应的处理线程的锁定。
[0026]可选地,中间程序包括:
[0027]rabbitmq中间程序或Redis中间程序。
[0028]第二方面,本专利技术实施例还提供一种中间处理装置,包括:
[0029]接收单元,用于接收至少一个第一客户端发送的第一监听信息,所述第一监听信息包括需要监听的通道标识;
[0030]锁定单元,用于基于所述通道标识锁定与该通道标识对应的处理线程,以及;
[0031]所述接收单元还用于,接收第二客户端发送的该通道标识的更新信息,并将所述更新信息添加在通道标识所属的key队列链表的尾部,且所述第二客户端为周期性发送所述通道标识对应的更新信息;
[0032]发送单元,用于基于更新的该通道标识的key队列链表向所述第一客户端反馈;
[0033]解除锁定单元,用于解除该通道标识对应的处理线程的锁定。
[0034]第三方面,本专利技术实施例还提供一种异构系统,其包括上述第二方面所述的中间处理装置,该中间处理装置与异构系统中的各客户端交互。
[0035](三)有益效果
[0036]采用本专利技术的异构系统集成方法,相比于现有技术,具有如下效果:
[0037]1)相比实时数据库虚位号方案,本专利技术开发、部署简单,只需要一个中间程序的服务即可满足所有系统间的通信,不需要组态,同时减轻了实时数据库的通讯压力。
[0038]2)相比现有技术中的关系数据库方案,借助于中间程序的消息传输实时性能高,单机可以支持读的速度高达110000次/s,写的速度高达81000次/s。
[0039]3)相比现有技术中自定义API方案,本专利技术协议单一,通过本方式即可基本满足所有系统间的通信,避免了多次开发。
附图说明
[0040]图1为本专利技术实施例示出的异构系统的架构图;
[0041]图2至图4均为本专利技术一实施例提供的一种基于中间程序的异构系统集成方法的流程图。
具体实施方式
[0042]为了更好的解释本专利技术,以便于理解,下面结合附图,通过具体实施方式,对本专利技术作详细描述。
[0043]Redis是工业控制领域产品广泛使用的一个中间软件/程序(下述简称中间件),其存储各个系统/客户端间交互的信息/消息,是一个高性能的key

value数据库,它以内存作为数据存储介质,读写数据的效率极高,而且Redis中的数据是持久化的,断电或重启,数据也不会丢失,能满足工业现场要求高速、稳定的数据传输场景。
[0044]本专利技术实施例提出一种便捷、高效能在各种编程语言中通用的通信方式,旨在统一异构系统间消息传送技术,降低系统间的耦合性,期望在减少开发、部署运维成本的同时也能提高整体系统的稳定性。
[0045]需要说明的是,本实施例中消息/指令之间的发送可采用定向发送或广播方式实现。当然,系统间单向信息传播可以也叫广播,如果是有多系统发送下述的XREAD block监听同一个队列的指令,即可以实现一对多广播。
[0046]本实施例中异构系统包括多个需要交互信息的客户端,任意两个客户端的信息交互借助于中间程序实现,所述中间程序中存储各个客户端间交互的信息。具体地,图1示出了本专利技术的异构系统的架构图,在图1中示出了PID回路健康管理与优化系统、APC先进过程控制系统、AAS高级报警管理系统、Direct智能操作导航系统均和Redis中间程序,其借助于Redis中间程序的统一各个系统间的通信方式,整个结构简单无需组态,无需创建数据库和表结构;数据传输具有实时性高,可靠性高的优点。
[0047]下述方法的中间程序/中间件均为Redis中间程序/中间件,当然,在其他实施例中,中间程序还可为Rabbitmq中间程序,本实施例仅为举例说明,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于中间程序的异构系统集成方法,其特征在于,异构系统包括多个需要交互信息的客户端,任意两个客户端的信息交互借助于中间程序实现,所述中间程序中存储各个客户端间交互的信息;方法包括:S10、中间程序接收至少一个第一客户端发送的第一监听信息,所述第一监听信息包括需要监听的通道标识;S20、中间程序基于所述通道标识锁定与该通道标识对应的处理线程,以及;接收第二客户端发送的该通道标识的更新信息,并将所述更新信息添加在通道标识所属的key队列链表的尾部,且所述第二客户端为周期性发送所述通道标识对应的更新信息;S30、中间程序基于更新的该通道标识的key队列链表向所述第一客户端反馈,以及解除该通道标识对应的处理线程的锁定。2.根据权利要求1所述的异构系统集成方法,其特征在于,S20中的中间程序基于所述通道标识锁定与该通道标识对应的处理线程之后,还包括:所述中间程序接收所述第二客户端发送的修剪指令,并通道标识所属的key队列链表进行修剪,使所述key队列链表的长度在预设长度以内。3.根据权利要求1所述的异构系统集成方法,其特征在于,第一客户端、第二客户端分别为下述系统中的一种:PID回路健康管理与优化系统;APC先进过程控制系统;AAS高级报警管理系统;Direct智能操作导航系统。4.根据权利要求1所述的异构系统集成方法,其特征在于,所述S10之前,所述方法还包括:S00、所述第一客户端...

【专利技术属性】
技术研发人员:魏捷曾繁林王家栋庄学波黄章荣薛家威刘鹏邓弘裕胡存张新宇郑群辉董玉莲张兴权颜锟
申请(专利权)人:浙江中控技术股份有限公司
类型:发明
国别省市:

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

1