【技术实现步骤摘要】
一种基于Redis的双平面采集数据方法及系统
[0001]本专利技术属于数据采集领域,具体涉及一种基于Redis的双平面采集数据方法及系统。
技术介绍
[0002]现有电力监控系一般在数据采集功能上通过主备方式进行处理,即将前置服务器机器节点分为主节点和备节点,只有主节点上主通道是进行链路采集、报文解析及数据处理的,主节点上的备通道和备节点的所有通道皆处于等待状态,只有当该通道切为主通道时,才进行链路采集、报文解析和数据处理功能。这种方式设计逻辑比较简单易行,但无法保证通道切换时数据的完整性和可靠性,降低了电力监控系统数据采集的可靠性。
技术实现思路
[0003]本专利技术的目的在于提供一种基于Redis的双平面采集数据方法及系统,电力监控系统中在双平面架构下进行安全可靠的数据采集和数据传输,并保证通道切换以及机器节点切换期间数据完整可靠。
[0004]为达到上述目的,本专利技术所采用的技术方案是:
[0005]本专利技术第一方面提供了一种基于Redis的双平面采集数据方法,包括:
[0006]通过选举算法由前置服务器A和前置服务器B中选出电力监控系统中是前置主服务器;
[0007]通过数据网第一平面分别建立前置服务器A与变电站远动A、前置服务器A与变电站远动B的通信链路;通过数据网第二平面分别建立前置服务器A与变电站远动A、前置服务器A与变电站远动B的通信链路,分别将各通信链路传输的前置服务器A的数据进行规约解析和数据处理,形成各链路的消息队列后,定时将消息队列进行格 ...
【技术保护点】
【技术特征摘要】
1.一种基于Redis的双平面采集数据方法,其特征在于,包括通过选举算法由前置服务器A和前置服务器B中选出电力监控系统中是前置主服务器;通过数据网第一平面分别建立前置服务器A与变电站远动A、前置服务器A与变电站远动B的通信链路;通过数据网第二平面分别建立前置服务器A与变电站远动A、前置服务器A与变电站远动B的通信链路,分别将各通信链路传输的前置服务器A的数据进行规约解析和数据处理,形成各链路的消息队列后,定时将消息队列进行格式转换并按照key+value格式进行数据封装后,存入到Redis系统;通过数据网第一平面分别建立前置服务器B与变电站远动A、前置服务器B与变电站远动B的通信链路;通过数据网第二平面分别建立前置服务器B与变电站远动A、前置服务器B与变电站远动B的通信链路,分别将各通信链路传输的前置服务器B的数据进行规约解析和数据处理,形成各链路的消息队列后,定时将消息队列进行格式转换并按照key+value格式进行数据封装后,存入到Redis系统;前置主服务器对Redis系统中缓存的数据进行有效性处理、时效性持久化处理和行数据完整性处理,对当前Redis系统中的数据按时标进行排序后,发送到电力监控系统中的处理服务器。2.根据权利要求1所述的一种基于Redis的双平面采集数据方法,其特征在于,还包括:当系统中发生通信链路切换时,通过对Redis中缓存的数据进行一致性比较和连续性分析处理,将处理后的有效数据进行排序,发送到电力监控系统中的处理服务器。3.根据权利要求1所述的一种基于Redis的双平面采集数据方法,其特征在于,通过选举算法由前置服务器A和前置服务器B中选出电力监控系统的前置主服务器的方法包括:在前置服务器A与前置服务器B之间周期性互发UDP心跳报文,UDP心跳报文内容包括本机前置模块的启动时间、本机机器名和网卡IP;周期性互发心跳报文设置有超时阈值;当超时阈值内收到UDP心跳报文时,认定前置服务器A与前置服务器B之间的UDP连接心跳状态正常;当在超出该超时时间值未收到UDP心跳报文内容时,认定前置服务器A与前置服务器B之间的UDP连接心跳状态中断;当前置服务器A与前置服务器B之间的UDP连接心跳状态正常时,根据启动时间由前置服务器A和前置服务器B中选举出电力监控系统的前置主服务器;若前置服务器A或者前置服务器B未收到UDP心跳报文时,选举其为电力监控系统的前置主服务器。4.根据权利要求1所述的一种基于Redis的双平面采集数据方法,其特征在于,分别将各通信链路传输的前置服务器A或前置服务器B的数据进行规约解析和数据处理的方法包括:在前置服务器A和前置服务器B内独立设置各通信链路的发送数据缓存区和接收数据缓存区;将对应的通信链路收到的数据进行规约解析,并按照固定格式进行封装组帧后存储至接收数据缓存区;根据命令优先级维度对数据进行排序并存储至发送数据缓存区,通过通信链路依次发送所述发送数据缓存区内存储的数据。5.根据权利要求1所述的一种基于Redis的双...
【专利技术属性】
技术研发人员:李德军,胡铮宏,刘柱云,汪贤浩,
申请(专利权)人:国电南京自动化股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。