一种基于SpringCloud的保信系统主子站智能配置校核装置及方法与流程

文档序号:29036709发布日期:2022-02-25 19:07阅读:179来源:国知局
一种基于SpringCloud的保信系统主子站智能配置校核装置及方法与流程
一种基于springcloud的保信系统主子站智能配置校核装置及方法
技术领域
1.本发明涉及保信系统通信技术领域,尤其涉及一种基于springcloud的保信系统主子站智能配置校核装置及方法。


背景技术:

2.早期电力系统发生故障后,需要现场通过传真或电话拨号将继电保护动作报告、录波数据等提交调度及其他生产管理部门,效率低下而且存在传真件不清晰、电话拨号传输故障量速度非常慢、厂站端因为没有保护人员在现场而不能及时从装置读取故障录波等无法及时收集齐全相关信息的情况,对于多厂站的复杂故障由于无法在第一时间获得相关资料导致不能立即分析处理。需要对各厂站反馈的各种保护动作、故障信息及录波文件等进行更加清晰的分类和展示。主站分析保护动作、故障信息及录波文件时依赖子站当前的配置信息,但是由于子站配置的更新信息,未及时传递到主站端,会导致故障分析准确度降低,现在通过主子站工作人员的电话或传真进行配置变化信息的传递,效率低。
3.子站工作人员在更改子站配置后,需电话通知主站工作人员,主站端工作人员再手动执行配置召唤,子站配置以sttp报文形式发送到主站端,主站端用c++程序解析sttp报文,将报文解析后得到的数据存到oracle数据库,主站工作人员再逐一进行人工比对。发现异常信息后需要电话通知子站端工程人员修改配置。
4.上述现有技术具有如下缺陷:
5.1.信息无法做到及时上送,主子站往往长期存在配置不一致的情况,为保信主站的工作带来极大不便。
6.2.人工的召唤会大量占用主子站间通信通道,为保信主站其他即时业务(如动作报告、录波数据)带来即时性干扰。
7.3.针对传统103子站和智能子站,配置文件的格式及上送规约不同,配置人工校核难度大,成本高。


技术实现要素:

8.基于现有技术的上述情况,本发明要解决的技术问题是:保信主站下连接的子站数目较大,每个子站有几十个到上百个装置,装置的配置数量极大。例如部署于某省省调的保信主站下连接了500多个保信子站,数据库和主子站间通信通道负载极大。配置生成的文件种类和格式繁多,校核周期长,需要一种效率高、准确度高的智能校核方案。
9.为解决上述技术问题,本发明的第一方面提供了一种基于springcloud的保信系统主子站智能配置校核装置,包括子站和主站;
10.所述子站包括传统子站和智能子站,采用不同的通讯规约与主站进行通讯;
11.所述主站包括主站通讯模块、主站业务处理模块和界面展示模块;
12.所述主站通讯模块用于和子站通讯;
13.所述主站业务处理模块用于处理主站通讯模块接收的子站数据;
14.所述界面展示模块用于展示数据处理的结果。
15.进一步的,所述业务处理模块采用基于java语言的springcloud框架实现。
16.进一步的,所述业务处理模块包括以下组件:
17.eureka组件,用于进行服务治理的组件,包含服务注册中心、服务注册与发现机制的实现;
18.config组件,用于动态维护配置文件,实现微服务的热部署;
19.hystrix组件,用于容错管理;
20.ribbon组件,客户端负载均衡的服务调用组件;
21.feign组件,基于ribbon和hystrix的声明式服务调用组件;
22.feignclient注解;
23.zuul网关组件,提供智能路由、访问过滤功能;
24.service,各个微服务的业务逻辑,包括采集数据、分析数据和上送结果三类微服务。
25.进一步的,所述界面展示模块基于c++的qt语言开发,采用ice集群实现java到qt端的数据流通。
26.本发明的第二方面提供了一种基于springcloud的保信系统主子站智能配置校核的方法,采用如前所述的装置执行;包括:
27.实时监控主子站配置信息变化,在配置信息发生变化时,子站向主站发送配置信息;
28.定期巡检子站配置信息,在满足定时条件后,主站发送命令到子站,通知子站将最新配置信息发送给主站,子站向主站发送配置信息。
29.进一步的,所述实时监控主子站配置信息变化的步骤包括:
30.子站发送配置信息变化的sttp报文给主站通讯模块;
31.主站通讯模块收到子站配置变化的sttp报文后,下发命令至子站召唤对应配置的详细信息;
32.子站收到主站召唤请求后,子站再发送包含详细配置信息的sttp报文。
33.进一步的,不同规约的子站发送的sttp报文由sttpanlyzer模块进行转换,转换后发送到主站端通讯模块;sttp报文包括sttp_head和sttp_body,head包括报文的种类,body包括写入信息的具体内容。
34.进一步的,所述详细配置信息包括:写入kafka的数据,将sttp报文解析后写入kafka;以及用sftp上载到业务处理模块的配置文件。
35.进一步的,当将sttp报文中的信息写入kafka中后,采集数据的微服务消费kafka中的消息,分析数据模块对该消息进行分析,获取厂站和信息点配置后,与主站的配置信息进行校核;校核后将结果发送给界面展示模块。
36.进一步的,还包括将数据处理的结果展示的步骤:
37.业务处理模块校核主子站配置信息是否一致,并将校核结果发送给界面展示模块进行展示。
38.综上所述,本发明提供一种基于springcloud的保信系统主子站智能配置校核装
置及方法,该校核装置包括子站和主站;子站包括传统子站和智能子站,采用不同的通讯规约与主站进行通讯;主站包括主站通讯模块、主站业务处理模块和界面展示模块;主站通讯模块用于和子站通讯;主站业务处理模块用于处理主站通讯模块接收的子站数据;界面展示模块用于展示数据处理的结果。该方法用该装置执行。本发明解决了主子站配置差异的即时性问题,做到子站配置改变后,主站端能及时、准确接收到配置变化信息;替代人工手动召唤,解决召唤流程给主子站间通信通道带来的负载问题;实现智能配置校核,针对不同类型子站、不同类型的配置文件给出准确的校核结果。
附图说明
39.图1为本发明实施例中的基于springcloud的保信系统主子站智能配置校核的装置框图;
40.图2为本发明实施例中的子站上送配置变化流程示意图;
41.图3为本发明实施例中的springcloud各组件示意图;
42.图4为本发明实施例中的微服务流程示意图;
43.图5为本发明实施例中的界面展示模块工作流程示意图;
44.图6为本发明实施例中的校核策略界面配置示意图;
45.图7为本发明实施例中的校核结果展示示意图。
具体实施方式
46.为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
47.本发明的第一方面提供了一种基于springcloud的保信系统主子站智能配置校核装置,包括子站和主站;所述子站包括传统子站和智能子站,采用不同的通讯规约与主站进行通讯;所述主站包括主站通讯模块、主站业务处理模块和界面展示模块;所述主站通讯模块用于和子站通讯;所述主站业务处理模块用于处理主站通讯模块接收的子站数据;所述界面展示模块用于展示数据处理的结果。具体的,如图1所示,整个智能配置校核架构设计分为两大块。第一大块为子站层,子站层分为传统子站和新一代智能子站,二次和主站通讯时使用不同的通讯规约。第二大块为主站层,主站层共有三个模块,其中主站通讯模块直接和子站通讯,进行数据的接收和命令下发的操作;主站业务处理模块负责主站端处理通讯模块采集到的子站数据;界面展示模块负责展示主站端对数据处理的结果。
48.本发明的第二方面提供了一种基于springcloud的保信系统主子站智能配置校核的方法,采用如前所述的装置执行;包括:
49.实时监控主子站配置信息变化,在配置信息发生变化时,子站向主站发送配置信息;
50.定期巡检子站配置信息,在满足定时条件后,主站发送命令到子站,通知子站将最新配置信息发送给主站,子站向主站发送配置信息。
51.1、实时监控主子站配置不一致,如图2所示,包括如下流程:
52.(1)为实现保信子站监视子站配置变化,在配置发生变化时,子站向上发送子站配置变化的信息,其中不同规约的子站发送的消息由sttpanlyzer模块进行转换,转换后发送到主站端通讯模块。sttpanlyzer模块定义了sttp报文的基本格式,sttp报文分为sttp_head和sttp_body。其中head部分定义了报文的种类,body中写入信息的具体内容。即当子站配置变化时,向主站发送的报文中,head里表明了该条报文是“配置信息变化”,body中表示具体的站信息。
53.(2)通讯模块收到子站配置变化的sttp报文后,下发命令至子站端召唤对应配置的详细信息。
54.(3)收到主站召唤请求后,子站再发送包含详细配置信息的sttp报文。
55.通讯模块收到的详细信息分为两种,一种为写入kafka的数据,此时需要将sttp报文解析写入kafka;一种是需要用sftp上载到业务处理模块的配置文件。
56.业务处理模块使用基于java语言的springcloud框架实现。本发明使用springcloud框架设计了以下组件:

eureka组件,用于进行服务治理的组件,包含服务注册中心、服务注册与发现机制的实现。

config组件,用于动态维护配置文件,实现微服务的热部署。

hystrix组件,用于容错管理,实现断路器模式,帮助服务依赖中出现的延迟和为故障提供强大的容错能力。

ribbon组件,客户端负载均衡的服务调用组件。

feign组件,基于ribbon和hystrix的声明式服务调用组件,本发明使用了注解方式进行采集微服务、分析微服务之间的调用,对微服务的某个接口定义@feignclient注解,feign就会针对这个接口创建一个动态代理,feign的动态代理会根据在接口上的@requestmapping等注解,来动态构造出要请求的服务的地址,发起请求、解析响应。

zuul:网关组件,提供智能路由、访问过滤等功能。

service,各个微服务的业务逻辑,本发明设计的微服务主要分为采集数据(采集通讯提供给kafka的子站配置信息流和数据库中的数据)、分析数据(主子站配置信息一致性比对)和上送结果(将主子站配置比对结果上送到qt界面进行展示)三类微服务,如图3所示。
57.当通讯模块将sttp报文中的信息写入kafka中后,采集数据(dbserver)的微服务会消费kafka中通讯模块提供的消息,分析数据模块(anlyzerserver)对该消息进行分析,获取厂站和信息点配置后,与主站端数据进行校核。校核后通过iceserver将结果给到界面展示模块,如图4所示。
58.界面展示模块使用基于c++的qt语言开发,本发明使用ice集群实现java到qt端的数据流通。集群部署的ice服务具有强大的扩展能力和稳定可用性。在一台设备宕机后,不会影响整个业务流程。具体流程如下,如图5所示:

应用介入以后调用方法functionc,执行步骤1,将目标方法名、传入参数经步骤2传到服务端java侧;

java侧ice接口根据传递过来的方法名和参数,执行步骤3去调用目标方法functionj;

如果目标方法为同步方法,则按照步骤1、2、3、4、5、6将结果(retval)直接返回,结果包含状态(status)和真正结果(retval);

如果目标方法为异步方法,则按步骤1、2、3、4、5、6直接返回结果,将返回结果(retval)里的状态(status)置为1,真正的结果(retval)里给唯一key。此时服务端继续执行目标方法,执行完成时执行步骤7,,将结果存入redis里,以唯一key作为key。同时客户端在接到返回结果,拿到状态值为1时,则执行步骤8,以唯一key作为查询条件去轮询redis数据库,直到取出数据。
59.2、配置策略定期巡检子站配置
60.上面介绍了实时监视主子站配置的流程。本发明为实现定期巡检子站配置功能,在业务逻辑模块中,添加了发送配置召唤命令的业务逻辑。在该类声明上边添加@component注解,并在需要定时任务执行的方法声明上添加@scheduled(cron="0/5****?")(cron表达式)注解以及相关的参数。加入scheduled注解的类,springcloud会开启一个线程,该线程会解析cron表达式中的时间,在时间条件满足后,执行该定时任务。定时任务执行后,发送命令到子站,通知子站将最新配置信息发送到主站端,后续流程同上述流程。
61.智能配置校核图形界面设计:在策略配置界面设置智能校核的周期和启动时间段,如图6所示,程序会在指定的时间运行,程序完成后,界面上会受到来自微服务的消息,界面上同时展示校核的结果,如图7所示。
62.综上所述,本发明提供一种基于springcloud的保信系统主子站智能配置校核装置及方法,该校核装置包括子站和主站;子站包括传统子站和智能子站,采用不同的通讯规约与主站进行通讯;主站包括主站通讯模块、主站业务处理模块和界面展示模块;主站通讯模块用于和子站通讯;主站业务处理模块用于处理主站通讯模块接收的子站数据;界面展示模块用于展示数据处理的结果。该方法用该装置执行。本发明解决了主子站配置差异的即时性问题,做到子站配置改变后,主站端能及时、准确接收到配置变化信息;替代人工手动召唤,解决召唤流程给主子站间通信通道带来的负载问题;实现智能配置校核,针对不同类型子站、不同类型的配置文件给出准确的校核结果。
63.应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1