发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种将通信服务程序分成多个无状态的独立的功能实体、方便地部署在多台通信服务器中、充分利用服务器集群的优势的基于面向服务架构的继电保护故障信息主站系统。
为了实现上述目的,本发明的基于面向服务架构的继电保护故障信息主站系统具有如下构成:
该基于面向服务架构的继电保护故障信息主站系统,其主要特点是,数个继电保护故障信息子站与所述的继电保护故障信息主站系统相连接,所述的数个继电保护故障信息子站与在数量上相对应的数个继电保护装置相通信,所述的主站系统包括:
数个前置通信模块,设置于数个前置通信服务器中,用以实现所述的继电保护故障信息主站系统与继电保护故障信息子站的信息交互,并将获取到的信息发送至分发服务模块;
规约转换模块,用以将所述的分发服务模块获取的继电保护故障信息子站系统的信息转换成继电保护故障信息主站系统可识别的信息;
分发服务模块,用以与所述的前置通信模块进行信息交互,并将所述的规约转换模块转换后的信息发送至所述的应用模块;
数个应用服务器,用以分析所述的规约转换模块转换后的信息;
界面展现模块,用以显示数据平台模块存储的所述的继电保护故障信息;
服务中心模块,用以建立服务消费者与服务提供者之间的连接,以及当存在多个服务提供者时,所述的服务中心模块均衡服务消费者与服务提供者的连接;
数据平台模块,用以存储所述的主站系统中的数据信息;以及数据库服务器。
进一步地,所述的前置通信模块为无状态的独立功能实体,数个前置通信模块设置于在数量上相对应的数个前置通信服务器中,且当某一前置通信服务器故障时,所述的前置通信模块将与该故障的前置通信服务器相连接的服务提供者连接到其他正常运行的前置通信服务器。
进一步地,所述的分发服务模块为无状态的独立功能实体,数个分发服务模块设置于在数量上相对应的数个应用服务器中,所述的数个分发服务模块分别在所述的服务中心模块注册。
进一步地,所述的数据库服务器包括:
关系型数据库,用以保存所述的主站系统中的变化较少的数据;
NOSQL数据库,用以保存继电保护故障信息子站系统实时传送到所述的主站系统的信息数据;
内存数据库,用于缓存所述的主站系统中常用的数据信息以及所述的主站系统内传递的信息。
进一步地,所述的主站系统还包括:
故障归档模块,用以每一次继电保护故障信息归档为一个数据档案;
自动巡检模块,用以定期从继电保护装置中获取继电保护装置的运行信息;
定值校验模块,用以根据所述的自动巡检模块获取的继电保护装置的运行信息与所述的定值校验模块内预设的继电保护装置的运行基准信息的比较的结果判断所述的继电保护装置是否正常运行;
报表统计模块,用以定期将所述的故障归档模块、自动巡检模块以及定值校验模块中的数据或信息形成报表。
进一步地,所述的界面展现模块为基于B/S模式的内容展示界面模块。
本发明中的基于面向服务架构的继电保护故障信息主站系统,具有松耦合、可扩展的模块组合;主站系统内大多数模块都为无状态的独立功能实体,可分别的部署到多台通信服务器实现负载均衡;可通过增加通信服务器的方式提高主站系统性能,并且对通信服务器配置要求不高,可有效降低成本。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
请参阅图1所示,为本发明的基于面向服务架构的继电保护故障信息主站系统的结构示意图,数个继电保护故障信息子站与所述的继电保护故障信息主站系统相连接,所述的数个继电保护故障信息子站与在数量上相对应的数个继电保护装置相通信,该基于面向服务架构的继电保护故障信息主站系统包括:
数个前置通信模块,设置于数个前置通信服务器中,用以实现所述的继电保护故障信息主站系统与继电保护故障信息子站的信息交互,并将获取到的信息发送至分发服务模块;
此处前置通信模块是负责所述的继电保护故障信息主站系统与继电保护故障信息子站的TCP连接的,并根据所述的继电保护故障信息主站系统与继电保护故障信息子站的约定的通信规约进行数据交互。该前置通信模块在继电保护故障信息主站内部只与分发服务模块进行信息交互,接收分发服务模块发送的数据,并转发给继电保护故障信息子站或者是接收继电保护故障信息子站的数据转发给分发服务模块。该通信前置模块可部署到多台通信服务器中实现多机负载均衡,以减轻每个通信服务器的压力,增加继电保护故障信息子站接入量。通信前置模块的多机负载均衡实现方式为各通信前置模块在运行时向其它服务器广播其当前所接入的继电保护故障信息子站以及运行状况,当一台服务器上的通信前置模块的运行状况广播,则认为其已经不在线,其它依然在线的通信前置模块将按照预先设置好的优先级以及各通信服务器负载情况,由合适的通信服务器接管不在线通信服务器上的继电保护故障信息子站。
所述的前置通信模块为无状态的独立功能实体,数个前置通信模块设置于在数量上相对应的数个前置通信服务器中,且当某一前置通信服务器故障时,所述的前置通信模块将与该故障的前置通信服务器相连接的服务提供者连接到其他正常运行的前置通信服务器。
规约转换模块,用以将所述的分发服务模块获取的继电保护故障信息子站的信息转换成继电保护故障信息主站系统可识别的信息;
所述的规约转换模块负责将继电保护故障信息主站系统与继电保护故障信息子站之间使用的信息表达规范转换为继电保护故障信息主站内部的数据,因为历史原因,目前在继电保护故障信息主站系统与继电保护故障信息子站之间存在着多种数据通信交换规范,规约转换模块则负责对上屏蔽通信交换规范的差异。该规约转换模块为无状态的独立的功能实体模块,可方便的分布式部署到多台通信服务器中。
分发服务模块,用以获取继电保护故障信息子站的信息,并将所述的规约转换模块转换后的信息发送至所述的应用模块;
所述分发服务模块负责继电保护故障信息主站系统内部的中转与调度,该分发服务模块是继电保护故障信息主站系统内与通信前置模块交互的唯一模块。该分发服务模块为无状态的独立的功能实体模块,可方便的分布式部署到多台服务器中,将自动向服务中心注册服务,服务消费者通过服务中心查询服务时将被引导到不同服务器中,以此实现负载的均衡分配,提升数据处理速度,解决瓶颈问题。
所述的分发服务模块为无状态的独立功能实体,数个分发服务模块设置于在数量上相对应的数个应用服务器中,所述的数个分发服务模块分别在所述的服务中心模块注册。
应用服务器,用以分析所述的规约转换模块转换后的信息;
界面展现模块,用以显示数据平台模块存储的所述的继电保护故障信息;
服务中心模块,用以建立服务消费者与服务提供者之间的连接,以及当存在多个服务提供者时,所述的服务中心模块均衡服务消费者与服务提供者的连接;
所述服务中心模块为此架构的核心模块,是服务提供者和服务消费者之间联系的桥梁,服务提供者向该模块注册其所提供的服务,服务消费者在该模块中查询和检修所需的服务。当同一个服务有多个服务提供者时,该模块将为不同的服务消费者连接不同的服务提供者,以实现负载的平均分配。
数据平台模块,用以存储所述的主站系统中的数据信息;数据平台模块将数据保存到数据库中,界面展示模块和其他应用模块从数据库中获取数据进行展示和分析;以及数据库服务器。
所述的数据库服务器包括:
关系型数据库,用以保存所述的主站系统中的变化较少的数据;
NOSQL数据库,用以保存继电保护故障信息子站系统实时传送到所述的主站系统的信息数据;
内存数据库,用于缓存所述的主站系统中常用的数据信息以及所述的主站系统内传递的信息。
所述的主站系统还包括:
故障归档模块,用以每一次继电保护故障信息归档为一个数据档案;
自动巡检模块,用以定期从继电保护装置中获取继电保护装置的运行信息;
定值校验模块,用以根据所述的自动巡检模块获取的继电保护装置的运行信息与所述的定值校验模块内预设的继电保护装置的运行基准信息的比较的结果判断所述的继电保护装置是否正常运行;
报表统计模块,用以定期将所述的故障归档模块、自动巡检模块以及定值校验模块中的数据或信息形成报表。
所述的界面展现模块为基于B/S模式的内容展示界面模块。
SOA(Service-Oriented Architecture),也称为面向服务架构,根据SOA模式,可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用,有效控制系统中与软件代理交互的人为依赖性。本发明的基于面向服务架构的继电保护故障信息主站系统基于SOA模式搭建。
本实施例为用于常规工程的一种基于面向服务架构的继电保护故障信息主站系统,如图1所示,其中包含了5项服务器硬件:
第一前置通信服务器1和第二前置通信服务器2为负载均衡运行方式,在服务器1和2上都部署有前置通信模块6,第一前置通信服务器1和第二前置通信服务器2分别负责与一部分继电保护故障信息子站通信,当第一前置通信服务器1和第二前置通信服务器2中有一台出现问题时,另一台将自动接过问题服务器所负责的所有任务,并在问题服务器正常后将其原来的任务归还。
数据库服务器5上安装有数据库程序,包括关系型数据库、NOSQL数据库和内存数据库,并且在本实施例中将服务中心模块13和数据平台模块14部署在了数据库服务器中,在实际的使用中,也可以将服务中心模块13和数据平台模块14分别部署到应用服务器或是其它额外的服务器中。
第一应用服务器3和第二应用服务器4上都部署了分发服务模块7和规约转换模块8,而其它的应用模块包括故障归档模块9、自动巡检模块10、定值校核模块11、报表统计模块12因为不适合分布式部署,只能在应用服务器中选择一个进行部署,本实施例中选择了第一应用服务器3,实际使用时,也可以将应用模块部署到其他应用服务器。
本实施例中服务中心模块13负责服务的注册与查询,在主站系统启动时须首先启动服务中心模块13,剩下的其他模块则没有启动顺序的要求。
对于服务提供者,在启动后将向服务中心模块13注册其启动的服务。对于服务消费者,在启动后须向服务中心模块13查询其需要的服务是否已有服务提供者存在,如果只有唯一的服务提供者存在,服务中心模块13将把这唯一的服务提供者与服务消费者相关联;如果有多个服务提供者存在,服务中心模块13将会分析每个服务提供者的负载情况,并将目前负载最低的服务提供者与当前请求服务的服务消费者相关联;如果当前没有服务提供者存在,服务中心模块13将记住服务消费者的请求,并在有服务提供者提供所需的服务时通知到服务消费者。服务消费者与服务提供者建立关联后,服务调用过程不需要经过服务中心模块13中转,此设定减轻了服务中心模块13的负担,提高了服务中心模块13的稳定性。服务中心模块13会以高频率定时扫描所有服务提供者的状态,当检测到有服务提供者由在线变为不在线时,将重新为下线的服务提供者所关联的服务消费者关联新的服务提供者。
本实施例中通过前置通信模块6与继电保护故障信息子站进行通信,其在本实施例中只与分发服务模块7互联,此做法是根据业务需求做出的最优选择,并不是架构限制。
本实施例中分发服务模块7和规约转换模块8为无状态的独立功能实体,其特点是每一次的任务处理都是独立执行,不受其他任务影响,多任务可并行执行。因为其无状态的特点,分发服务模块7和规约转换模块8可被部署到多台服务器中,利用服务器集群的优势提高系统的处理量。
本实施例中数据库服务器5中部署了三个数据库,分别为关系型数据库、NOSQL数据库和内存数据库,在实际使用中可将三个数据库部署到不同服务器中。本实施例中数据平台模块14根据业务需求提供了对数据的操作服务,其他模块只需调用其服务,无需关心数据库的细节问题。
另外,所述界面展示模块为基于B/S模式的内容展示方式,客户机无需额外安装客户端,只要有浏览器即可。
所述故障归档模块7用于将电网中一次故障的信息归类为一个数据档案。
所述自动巡检模块10定期对变电站中所有继电保护装置进行信息召唤,以检查继电保护装置的运行状态。
所述定值校核模块11根据设定好的基准值与继电保护装置内的当前定值进行比对,检查继电保护装置是否按预期运行。
所述报表统计模块12定期整理继电保护故障信息系统、所有变电站、所有继电保护装置的运行情况,形成报表。
本发明中的基于面向服务架构的继电保护故障信息主站系统,具有松耦合、可扩展的模块组合;主站系统内大多数模块都为无状态的独立功能实体,可分别的部署到多台通信服务器实现负载均衡;可通过增加通信服务器的方式提高主站系统性能,并且对通信服务器配置要求不高,可有效降低成本。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。