一种基于Zookeeper的电力系统设备模型关键字生成方法与流程

文档序号:11176959阅读:586来源:国知局
一种基于Zookeeper的电力系统设备模型关键字生成方法与流程

本发明属于电网调度自动化领域,具体涉及一种基于zookeeper的电力系统设备模型关键字生成方法。



背景技术:

现如今,国民经济高速发展,电力供给需求呈现几何级数增长,电力系统结构越来越复杂,调度自动化业务不断拓展,运行方式变化越来越频繁,因而电网运行安全监控手段也越来越受到广泛的应用。

设备模型是电网运行的基础,设备模型数据的准确性直接影响到电网运行的安全性,设备模型数据维护的效率直接影响到电网运行的效率。zookeeper技术在多线程并发控制中有良好的性能及稳定性表现,基于zookeeper的电力系统设备模型关键字生成方法能够对设备模型的插入操作时关键字生成效率有显著提升,是电网自动化设备模型维护的创新实践,将为实现调度智能化提供一个很好的基础,因此具有十分广阔的应用前景。



技术实现要素:

为了实现上述目的,本发明提出一种基于zookeeper的电力系统设备模型关键字生成方法,该方法能够有效的提升电网设备模型的维护效率,具有通用性和有效性。

实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:

一种基于zookeeper的电力系统设备模型关键字生成方法,包括:

对各模型服务和zookeeper进行初始化;

模型服务a响应并解析客户端发送的请求报文,判读电力系统中是否同时有模型服务b响应对应设备类型的设备模型插入操作;

根据判断结果,模型服务a执行设定的对应操作,直至完成对应设备类型的设备模型插入操作。

进一步地,所述对各模型服务和zookeeper进行初始化,具体为:

对电力系统中的服务器内的模型服务进行初始化,同时在zookeeper中建立包括设备类型、地区编码、设备最大id记录号三层永久节点的数据目录结构。

进一步地,所述设备类型、地区编码、设备最大id记录号中的初始数据均为电力系统数据库中原始存储的设备类型、地区编码、设备最大id记录号。

进一步地,所述根据判断结果,模型服务a执行设定的对应操作,直至完成对应设备类型的设备模型插入操作,具体为:

若存在模型服务b响应对应设备类型的设备模型插入操作,则模型服务a不进行对应设备类型的设备模型插入操作,直至模型服务b的响应操作结束,模型服务a在zookeeper中对应设备类型节点下添加模型服务a所在服务器ip临时节点;当模型服务a完成对应设备类型的设备模型插入操作后,删除对应的服务器ip临时节点,此时zookeeper中设备最大id记录号节点中的值加1。

进一步地,所述的一种基于zookeeper的电力系统设备模型关键字生成方法,还包括:若不存在模型服务b响应对应设备类型的设备模型插入操作,则模型服务a在zookeeper中对应设备类型节点下添加模型服务a所在服务器ip临时节点;当模型服务a完成对应设备类型的设备模型插入操作后,删除对应的服务器ip临时节点,此时zookeeper中设备最大id记录号节点中的值加1。

进一步地,所述模型服务a不进行对应设备类型的设备模型插入操作,直至模型服务b的响应操作结束,具体为:模型服务a与zookeeper的watcher模块配合,实现服务请求等待。

进一步地,所述客户端发送的请求报文中包含设备类型信息、设备模型的操作类型、设备模型参数信息。

进一步地,所述设备模型的操作类型包括:更新、插入和删除。

本发明的有益效果:

本发明的基于zookeeper的电力系统设备模型关键字生成方法,对电网设备模型维护效率有显著提升,缩短了设备模型维护时间,同时,保障了电网安全稳定运行。

附图说明

图1为本发明的设备模型维护流程示意图;

图2为zookeeperid生成中心数据目录图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面结合附图对本发明的应用原理作详细的描述。

电力系统中存在很多服务器,在每台服务器里都会安装电力系统设备模型维护服务程序(以下简称模型服务)。图1中的“数据操作”框指的设备模型的操作类型为“更新”。

本发明提出一种基于zookeeper的电力系统设备模型关键字生成方法,该方法能够有效的提升电网设备模型的维护效率,具有通用性和有效性;如图1所示,具体包括以下步骤:

s1:对各模型服务和zookeeper进行初始化;

前述的所述对各模型服务和zookeeper进行初始化,具体为:

对电力系统中的服务器内的模型服务进行初始化,同时在zookeeper中建立包括设备类型、地区编码、设备最大id记录号三层永久节点的数据目录结构,利用zookeeper永久节点的特性,可保证设备记录键字(设备类型、地区编码、设备最大id记录号,设备最大id记录号用于代表新插入的设备的编码)的完整性;前述的在zookeeper中建立三层永久节点的数据目录结构采用现有的zookeeper分布式锁技术来实现,此处不赘述。

其中,所述设备类型、地区编码、设备最大id记录号中的初始数据均为电力系统数据库中原始存储的设备类型、地区编码、设备最大id记录号。

本发明中所述的设备类型用于标识设备所属归类(如:断路器),地区编码用于标识设备所属地区(如:江苏),设备最大id记录号用于设备的编号(如:9999)。

利用zookeeper中设备类型、地区编码、设备最大id记录号三层永久节点的数据目录结构,可以实现:(a)模型服务的负载均衡;(b)不同表号的设备模型插入操作的并发,提升设备模型维护效率。

s2:模型服务a响应并解析客户端发送的请求报文,判读电力系统中是否同时有模型服务b响应对应设备类型的设备模型插入操作;

所述客户端发送的请求报文中包含设备类型信息、设备模型的操作类型、设备模型参数信息。优选地,所述设备模型的操作类型包括:更新、插入和删除;只有当设备模型的操作类型为插入时,才需要生成关键字;当设备模型的操作类型为更新和删除时,不需要生成关键字;

所述判读电力系统中是否同时有模型服务b响应对应设备类型的设备模型插入操作是通过判断zookeeper中是否有模型服务进行对应设备类型的设备模型插入操作。

s3:根据判断结果,模型服务a执行设定的对应操作,直至完成对应设备类型的设备模型插入操作。

步骤s3具体包括以下步骤:

s301:若存在模型服务b响应对应设备类型的设备模型插入操作,则模型服务a不进行对应设备类型的设备模型插入操作,直至模型服务b的响应操作结束,模型服务a在zookeeper中对应设备类型节点下添加模型服务a所在服务器ip临时节点;当模型服务a完成对应设备类型的设备模型插入操作后,删除对应的服务器ip临时节点,此时zookeeper中设备最大id记录号节点中的值加1。

其中,所述模型服务a不进行对应设备类型的设备模型插入操作,直至模型服务b的响应操作结束,具体为:模型服务a与zookeeper的watcher模块配合,实现服务请求等待。

s302:所述的一种基于zookeeper的电力系统设备模型关键字生成方法,还包括:若不存在模型服务b响应对应设备类型的设备模型插入操作,则模型服务a在zookeeper中对应设备类型节点下添加模型服务a所在服务器ip临时节点;当模型服务a完成对应设备类型的设备模型插入操作后,删除对应的服务器ip临时节点,此时zookeeper中设备最大id记录号节点中的值加1。

上述方案中,利用服务器ip临时节点,可以解决:(a)同一设备类型的设备模型插入操作并发问题;(b)模型服务异常情况下带来的系统死锁等待问题;

上述方案中,通过模型服务增加设备模型,更换zookeeper三层永久节点中设备最大id记录号;再次增加设备模型时利用zookeeper三层永久节点中设备最大id记录号信息,可以解决设备模型编号重复使用的问题。

综上所述:

本发明的基于zookeeper的电力系统设备模型关键字生成方法,对电网设备模型维护效率有显著提升,缩短了设备模型维护时间,同时,保障了电网安全稳定运行。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1