一种跨进程数据快速同步系统及其数据同步方法

xiaoxiao2020-10-23  18

一种跨进程数据快速同步系统及其数据同步方法
【技术领域】
[0001]本发明涉及一种数据同步方法,尤其涉及的是一种跨进程数据快速同步系统及其数据同步方法。
【背景技术】
[0002]无论是本程序还是跨程序或者跨网络,在工控领域都无法回避一个问题,那就是如何将最新采集到的设备数据更新到相关接入程序里。对于这类需求,目前使用的方法如下:1.要么接入程序主动轮询来查询采集端数据;2.要么使用一个中间数据库来作为彼此的数据中转。但是,这些手段都存在数据即时性得不到保障,又或者更新不及时的问题,对用户体验或功能实现都带来了很大的困扰。
[0003]因此,现有技术还有待于改进和发展。

【发明内容】

[0004]本发明的目的在于提供一种跨进程数据快速同步系统及其数据同步方法,旨在解决现有的设备数据更新存在更新不及时,不能满足使用要求的问题。
[0005]本发明的技术方案如下:
[0006]一种跨进程数据快速同步系统,其中,包括:
[0007]本地数据接收端,接收标记或根据需要注册标记并定制标记的过滤条件,将标记发送至工控机服务器,接收工控机服务器发送的设备运行数据;
[0008]工控机服务器,收集设备的运行数据,根据本地数据接收端发送的标记内容对相应数据进行标记,并即时将发生更新的标记数据发送至本地数据接收端;
[0009]数据储存模块,存储由工控机服务器收集到的各设备运行数据。
[0010]所述的跨进程数据快速同步系统,其中,还包括:
[0011]异地数据接收端,输入登陆信息至云服务器进行登陆,接收云服务器发送的设备运行数据,根据需要注册标记并定制标记的过滤条件,将标记发送至云服务器;
[0012]云服务器,接收本地数据接收端发送的设备运行数据,验证异地数据接收端的身份,将异地数据接收端权限内的设备运行数据运行至异地数据接收端,将接收到的异地数据接收端的标记发送至本地数据接收端,并将本地数据接收端发送的即时更新标记数据发送至异地数据接收端。
[0013]所述的跨进程数据快速同步系统,其中,所述对相应设备数据进行标记通过钩子程序实现。
[0014]所述的跨进程数据快速同步系统,其中,所述工控机服务器通过RS-485接口收集各设备的运行数据。
[0015]所述的跨进程数据快速同步系统,其中,所述本地数据接收端采用PC机或手持移动设备,所述异地数据接收端采用PC机或手持移动设备。
[0016]所述的跨进程数据快速同步系统,其中,所述手持移动设备包括手机或平板电脑。
[0017]所述的跨进程数据快速同步系统,其中,所述本地数据接收端与工控机服务器通过wif1、4G或蓝牙方式连接。
[0018]一种跨进程数据快速同步系统的数据同步方法,其中,具体包括以下步骤:
[0019]步骤AOO:工控机服务器实时收集设备的运行数据并存储至数据储存模块;
[0020]步骤BOO:本地数据接收端根据需要注册标记并定制标记的过滤条件,将标记发送至工控机服务器;
[0021]步骤COO:工控机服务器根据本地数据接收端发送的标记内容对相应设备数据进行标记;
[0022]步骤DOO:工控机服务器判断标记是否在有效范围内,是,执行步骤EOO-步骤GOO,否,执行步骤GOO ;
[0023]步骤EOO:工控机服务器判断标记的相应设备数据是否发生变化,是,执行步骤H)0,否,执行步骤GOO ;
[0024]步骤R)0:工控机服务器把发生变化的相应设备数据发送至本地数据接收端;
[0025]步骤GOO:工控机服务器不发送设备运行数据。
[0026]所述的跨进程数据快速同步系统的数据同步方法,其中,还包括以下步骤:
[0027]步骤HOO:本地数据接收端把收到的数据传输至云服务器;
[0028]步骤100:异地数据接收端输入登陆信息至云服务器;
[0029]步骤JOO:云服务器验证登陆信息是否有效,是,执行步骤K00,否,执行步骤LOO ;
[0030]步骤KOO:云服务器将异地数据接收端权限内的设备运行数据发送至异地数据接收端;
[0031]步骤LOO:云服务器拒绝异地数据接收端登陆;
[0032]步骤MOO:异地数据接收端根据需要注册标记并定制标记的过滤条件,将标记发送至云服务器;
[0033]步骤NOO:云服务器将标记发送至本地数据接收端;
[0034]步骤000:本地数据接收端将收到的标记发送至工控机服务器;
[0035]步骤POO:执行步骤步骤COO-步骤GOO ;
[0036]步骤QOO:本地数据接收端将接收到的发生变化的相应设备数据发送至云服务器,云服务器把接收到的发生变化的相应设备数据发送至异地数据接收端。
[0037]本发明的有益效果:本发明通过提供一种跨进程数据快速同步系统及其数据同步方法,通过跨线程、进程或网络注册钩子,当设备数据发生更新时,采集线程会调用自己的钩子链,通知每个钩子的所有者,并将最新数据发送出去;本发明将数据的更新接收由被动变成主动,对接入程序用于数据同步的资源和时间都得到了最大化释放;当数据发生更新时即时进行通知,保证了通讯数据的准确性和及时性;由于只是通知发生变化的数据部分,大大压缩了数据的通讯量;利用钩子技术,允许用户定制自己的过滤条件,且钩子的数量可以根据需要设置,从而收到数据更新通知的次数也完全在于自己注册的钩子数量,灵活性大大提尚。
【附图说明】
[0038]图1是本发明中跨进程数据快速同步系统的连接示意图。
[0039]图2是本发明中跨进程数据快速同步系统的数据同步方法的步骤流程图。
【具体实施方式】
[0040]为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。
[0041]如图1所示,本跨进程数据快速同步系统包括本地数据接收端、工控机服务器和数据储存模块,所述本地数据接收端和工控机服务器通讯连接,工控机服务器和数据储存模块连接,工控机服务器实时采集设备的运行数据;本地数据接收端,根据需要注册标记并定制标记的过滤条件,将标记发送至工控机服务器,接收工控机服务器发送的设备运行数据;工控机服务器,收集设备的运行数据,根据本地数据接收端发送的标记内容对相应数据进行标记,并即时将发生更新的标记数据发送至本地数据接收端;数据储存模块,存储由工控机服务器收集到的各设备运行数据。
[0042]具体地,所述对相应设备数据进行标记通过钩子程序实现,本地数据接收端根据需要注册钩子并定制钩子的过滤条件,将钩子发送至工控机服务器,工控机服务器根据本地数据接收端发送的钩子内容对相应数据进行标记。
[0043]本系统可采集多种工业设备的运行数据,如窑炉,加热箱,渗碳箱,等等;本系统也可以同时采用多台工业设备的运行数据。所述本地数据接收端设置在工业设备的近距离范围内,如设置在车间内,工厂办公室内。所述本地数据接收端可以采用PC机(个人计算机)或手持移动设备,如手机,平板电脑(如Ipad),等等。具体地,所述本地数据接收端与工控机服务器通过wif1、4G或蓝牙方式连接。
[0044]具体地,所述工控机服务器通过RS-485接口收集各设备的运行数据。
[0045]因为工业设备可以24小时无间断运行,但是管理人员不可能24小时在岗进行监控,为了方便管理人员下班或者外出办事时也能对设备运行数据进行监控,本系统还包括异地数据接收端和云服务器,所述云服务器和本地数据接收端通讯连接,异地数据接收端和云服务器通讯连接;异地数据接收端输入登陆信息至云服务器进行登陆,接收云服务器发送的设备运行数据,根据需要注册标记并定制标记的过滤条件,将标记发送至云服务器;云服务器接收本地数据接收端发送的设备运行数据,验证异地数据接收端的身份,将异地数据接收端权限内的设备运行数据运行至异地数据接收端,将接收到的异地数据接收端的标记发送至本地数据接收端,并将本地数据接收端发送的即时更新标记数据发送至异地数据接收端。
[0046]具体地,允许多个具有相同权限的异地数据接收端同时登陆云服务器获取同一个对应设备的运行数据,也允许多个不同权限的异地数据接收端同时登陆云服务器获取不同对应设备的运行数据。
[0047]如图2所示,一种如上述所述的跨进程数据快速同步系统的数据同步方法,具体包括以下步骤:
[0048]步骤AOO:工控机服务器实时收集设备的运行数据并存储至数据储存模块;
[0049]步骤BOO:本地数据接收端根据需要注册标记并定制标记的过滤条件,将标记发送至工控机服务器;
[0050]步骤COO:工控机服务器根据本地数据接收端发送的标记内容对相应设备数据进行标记;
[0051]步骤DOO:工控机服务器判断标记是否在有效范围内,是,执行步骤EOO-步骤GOO,否,执行步骤GOO ;
[0052]步骤EOO:工控机服务器判断标记的相应设备数据是否发生变化,是,执行步骤H)0,否,执 行步骤GOO ;
[0053]步骤R)0:工控机服务器把发生变化的相应设备数据发送至本地数据接收端;
[0054]步骤GOO:工控机服务器不发送设备运行数据。
[0055]当管理人员通过异地登陆通过云服务器获取设备的运行数据时,具体还包括以下步骤:
[0056]步骤HOO:本地数据接收端把收到的数据传输至云服务器;
[0057]步骤100:异地数据接收端输入登陆信息至云服务器;
[0058]步骤JOO:云服务器验证登陆信息是否有效,是,执行步骤K00,否,执行步骤LOO ;
[0059]步骤KOO:云服务器将异地数据接收端权限内的设备运行数据发送至异地数据接收端;
[0060]步骤LOO:云服务器拒绝异地数据接收端登陆;
[0061]步骤MOO:异地数据接收端根据需要注册标记并定制标记的过滤条件,将标记发送至云服务器;
[0062]步骤NOO:云服务器将标记发送至本地数据接收端;
[0063]步骤000:本地数据接收端将收到的标记发送至工控机服务器;
[0064]步骤POO:执行步骤步骤COO-步骤GOO ;
[0065]步骤QOO:本地数据接收端将接收到的发生变化的相应设备数据发送至云服务器,云服务器把接收到的发生变化的相应设备数据发送至异地数据接收端。
[0066]根据上述所述的跨进程数据快速同步系统及其数据同步方法,先列举以下实施例加以说明:
[0067]将本跨进程数据快速同步系统应用在窑炉运行数据的收集上:工厂内设备有20台窑炉设备,分别编码1-20,工厂办公室内配置一台或多台工控机服务器实时收集20台窑炉的运行数据,并将收集到的窑炉运行数据存储至数据储存模块,工厂内配置一台内置有钩子程序的PC机(即本地数据接收端)与工控机服务器进行通信连接。
[0068]管理人员通过PC机根据需要注册钩子并定制钩子的过滤条件(在11:00-13:30的时间段内监控编号2-9窑炉从温度100°C升至150°C所需要的时间),将钩子发送至工控机服务器,工控机服务器根据接收的钩子内容对相应设备数据进行标记,工控机服务器判断钩子的时间是否在11:00-13:30的时间段内,是,工控机服务器继续判断编号2-9窑炉的温度是否从100°C升至150°C,如果是,工控机服务器把升温时间数据发送至本地数据接收端,如果温度不是从100°C升至150°C,工控机服务器不发送数据,如果钩子的时间不是否在11:00-13:30的时间段内,工控机服务器不发送数据;本地数据接收端将接收到的升温时间数据发送至云服务器。
[0069]当管理人员外出或者下班回家后,想实时了解设备的运行数据,通过内置有钩子程序的Ipad (即异地数据接收端)登陆到云服务器,云服务器验证登陆信息是否有效,如果有效,云服务器将把接收到的编号2-9窑炉升温时间数据发送至Ipad,如果无效,云服务器拒绝登陆;登陆后,如果此时管理人员还想了解14:00-17:00的时间段内监控编号15-20窑炉内的压力变化,通过Ipad根据需要注册钩子并定制钩子的过滤条件(在14:00-17:00的时间段内监控编号15-20窖炉内的压力变化),将钩子发送至云服务器,云服务器将钩子发送至本地数据接收端,本地数据接收端将钩子发送至工控机服务器,工控机服务器根据接收的钩子内容对相应设备数据进行标记,工控机服务器判断钩子的时间是否在14:00-17:00的时间段内,是,工控机服务器继续判断编号15-20窑炉内的压力是否发生变化,如果是,工控机服务器把压力数据发送至本地数据接收端,本地数据接收端将接收到的压力数据发送至云服务器,云服务器将压力数据发送至Ipad ;如果窑炉内的压力没有发生变化,工控机服务器不发送数据,如果钩子的时间不是否在14:00-17:00的时间段内,工控机服务器不发送数据。
[0070]本跨进程数据快速同步系统通过跨线程、进程或网络注册钩子,当设备数据发生更新时,采集线程会调用自己的钩子链,通知每个钩子的所有者,并将最新数据发送出去;本发明将数据的更新接收由被动变成主动,对接入程序用于数据同步的资源和时间都得到了最大化释放;当数据发生更新时即时进行通知,保证了通讯数据的准确性和及时性;由于只是通知发生变化的数据部分,大大压缩了数据的通讯量;利用钩子技术,允许用户定制自己的过滤条件,且钩子的数量可以根据需要设置,从而收到数据更新通知的次数也完全在于自己注册的钩子数量,灵活性大大提高。
[0071]应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
【主权项】
1.一种跨进程数据快速同步系统,其特征在于,包括: 本地数据接收端,接收标记或根据需要注册标记并定制标记的过滤条件,将标记发送至工控机服务器,接收工控机服务器发送的设备运行数据; 工控机服务器,收集设备的运行数据,根据本地数据接收端发送的标记内容对相应数据进行标记,并即时将发生更新的标记数据发送至本地数据接收端; 数据储存模块,存储由工控机服务器收集到的各设备运行数据。2.根据权利要求1所述的跨进程数据快速同步系统,其特征在于,还包括: 异地数据接收端,输入登陆信息至云服务器进行登陆,接收云服务器发送的设备运行数据,根据需要注册标记并定制标记的过滤条件,将标记发送至云服务器; 云服务器,接收本地数据接收端发送的设备运行数据,验证异地数据接收端的身份,将异地数据接收端权限内的设备运行数据运行至异地数据接收端,将接收到的异地数据接收端的标记发送至本地数据接收端,并将本地数据接收端发送的即时更新标记数据发送至异地数据接收端。3.根据权利要求2所述的跨进程数据快速同步系统,其特征在于,所述对相应设备数据进行标记通过钩子程序实现。4.根据权利要求2所述的跨进程数据快速同步系统,其特征在于,所述工控机服务器通过RS-485接口收集各设备的运行数据。5.根据权利要求2所述的跨进程数据快速同步系统,其特征在于,所述本地数据接收端采用PC机或手持移动设备,所述异地数据接收端采用PC机或手持移动设备。6.根据权利要求5所述的跨进程数据快速同步系统,其特征在于,所述手持移动设备包括手机或平板电脑。7.根据权利要求2所述的跨进程数据快速同步系统,其特征在于,所述本地数据接收端与工控机服务器通过wif1、4G或蓝牙方式连接。8.—种跨进程数据快速同步系统的数据同步方法,其特征在于,具体包括以下步骤: 步骤AOO:工控机服务器实时收集设备的运行数据并存储至数据储存模块; 步骤BOO:本地数据接收端根据需要注册标记并定制标记的过滤条件,将标记发送至工控机服务器; 步骤COO:工控机服务器根据本地数据接收端发送的标记内容对相应设备数据进行标记; 步骤DOO:工控机服务器判断标记是否在有效范围内,是,执行步骤EOO-步骤G00,否,执行步骤GOO ; 步骤EOO:工控机服务器判断标记的相应设备数据是否发生变化,是,执行步骤H)0,否,执行步骤GOO ; 步骤:工控机服务器把发生变化的相应设备数据发送至本地数据接收端; 步骤GOO:工控机服务器不发送设备运行数据。9.根据权利要求8所述的跨进程数据快速同步系统的数据同步方法,其特征在于,还包括以下步骤: 步骤HOO:本地数据接收端把收到的数据传输至云服务器; 步骤100:异地数据接收端输入登陆信息至云服务器; 步骤JOO:云服务器验证登陆信息是否有效,是,执行步骤K00,否,执行步骤LOO ; 步骤KOO:云服务器将异地数据接收端权限内的设备运行数据发送至异地数据接收端; 步骤LOO:云服务器拒绝异地数据接收端登陆; 步骤MOO:异地数据接收端根据需要注册标记并定制标记的过滤条件,将标记发送至云服务器; 步骤NOO:云服务器将标记发送至本地数据接收端; 步骤000:本地数据接收端将收到的标记发送至工控机服务器; 步骤POO:执行步骤步骤COO-步骤GOO ; 步骤QOO:本地数据接收端将接收到的发生变化的相应设备数据发送至云服务器,云服务器把接收到的发生变化的相应设备数据发送至异地数据接收端。
【专利摘要】本发明公开了一种跨进程数据快速同步系统及其数据同步方法,通过跨线程、进程或网络注册钩子,当设备数据发生更新时,采集线程会调用自己的钩子链,通知每个钩子的所有者,并将最新数据发送出去;本发明将数据的更新接收由被动变成主动,对接入程序用于数据同步的资源和时间都得到了最大化释放;当数据发生更新时即时进行通知,保证了通讯数据的准确性和及时性;由于只是通知发生变化的数据部分,大大压缩了数据的通讯量;利用钩子技术,允许用户定制自己的过滤条件,且钩子的数量可以根据需要设置,从而收到数据更新通知的次数也完全在于自己注册的钩子数量,灵活性大大提高。
【IPC分类】G06F9/52
【公开号】CN104899104
【申请号】CN201510257262
【发明人】杨胜传, 徐广华, 万鹏
【申请人】广东中鹏热能科技有限公司
【公开日】2015年9月9日
【申请日】2015年5月19日

最新回复(0)