微电网能量管理系统服务程序的双机热备方法技术方案

技术编号:14485087 阅读:66 留言:0更新日期:2017-01-26 17:46
本发明专利技术公开了一种微电网能量管理系统服务程序的双机热备方法,包括以下步骤,1)与客户端程序对应的第一服务程序和第二服务程序分别调用动态链接库程序并对应创建服务端通讯线程和客户端通讯线程,预设第一服务程序为主服务程序,客户端程序与主服务程序通讯;2)服务端通讯线程和客户端通讯线程建立实时通讯并实时交互第一服务程序和第二服务程序的主辅状态;3)当通讯异常或中断时,切换第一服务程序和第二服务程序的主辅状态,客户端程序与作为主服务程序的第二服务程序建立通讯。本发明专利技术简单高效地实现了微电网能量管理系统服务程序的双机热备功能,既不需要投资较大的服务器硬件集群,也不需要高复杂度不易维护的第三方通讯总线管理软件。

【技术实现步骤摘要】

本专利技术涉及微电网系统
,特别是涉及一种用于微电网能量管理系统服务程序的双机热备方法
技术介绍
微电网解决了分布式电源的大规模接入问题,大电网与分布式发电相结合的微网运行方式是节省投资、降低能耗、提高电力系统可靠性和灵活性的主要方式,近年来在国内外得到了广泛应用。微电网能量管理系统是一种依托通信技术、计算机技术的软硬件集成系统,实现对微电网数据的采集与监控,能量的优化调度与控制,是保障微电网安全运行的“大脑”,对其可靠性要求较高。其核心的服务程序必须7×24小时安全运行,双机热备技术保障系统不会因系统节点机的单点故障影响系统整体运行。在传统的大电网能量管理系统(EMS)中,实现双机热备一般有两种方式。一种是依赖硬件设备的集群技术,投资较大,一般不适宜在微电网系统中采用;另一种是采用通讯总线软件模块,该模块负责所有其它模块的注册,需要双机热备的服务程序模块的切换等等,复杂度较高,不容易维护,在规模相对较小的微电网能量管理系统中并不实用。
技术实现思路
本专利技术的目的是针对现有技术中存在的技术缺陷,提供一种微电网能量管理系统服务程序的双机热备方法。为实现本专利技术的目的所采用的技术方案是:一种微电网能量管理系统服务程序的双机热备方法,包括以下步骤,1)与客户端程序对应的第一服务程序和第二服务程序分别调用动态链接库程序并对应创建服务端通讯线程和客户端通讯线程,预设第一服务程序为主服务程序,客户端程序与主服务程序通讯;2)服务端通讯线程和客户端通讯线程建立实时通讯并实时交互第一服务程序和第二服务程序的主辅状态;3)当通讯异常或中断时,服务端通讯线程和客户端通讯线程同步切换第一服务程序和第二服务程序的主辅状态,客户端程序与作为主服务程序的第二服务程序建立通讯。在所述的步骤3)后,当服务端通讯线程和客户端通讯线程间的通讯恢复正常,服务端通讯线程和客户端通讯线程再次同步切换第一服务程序和第二服务程序的主辅状态,客户端程序与作为主服务程序的第一服务程序建立通讯。所述的步骤3)中的通讯异常或中断为第一服务程序与客户端程序间的通讯或服务端通讯线程和客户端通讯线程间的通讯异常或中断。服务端通讯线程和客户端通讯线程间的通讯方式为TCPsocket。与现有技术相比,本专利技术的有益效果是:本专利技术简单高效地实现了微电网能量管理系统服务程序的双机热备功能,既不需要投资较大的服务器硬件集群,也不需要高复杂度不易维护的第三方通讯总线管理软件。只需要双机热备的服务程序分别加载一个动态链接库,调用一个非常简单的接口即可判断自身的主辅状态并进行主服务程序和辅服务程序间的主辅状态交互,应用实现简单,在网络故障或机器硬件故障导致主服务程序异常的情况,热备用的辅服务程序程序可实现由辅状态到主状态的秒级切换,完全满足微电网能量管理系统服务程序的双机热备需求。附图说明图1所示为本专利技术的微电网能量管理系统服务程序的双机热备方法的原理图。具体实施方式以下结合附图和具体实施例对本专利技术作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,本专利技术的适用于微电网能量管理系统服务程序的双机热备方法,包括以下步骤,1)与客户端程序对应的第一服务程序和第二服务程序分别调用动态链接库程序对应创建服务端通讯线程和客户端通讯线程,预设第一服务程序为主服务程序;即,第一服务程序和第二服务程序为双机热备程序,初始第一服务程序为主服务程序,客户端程序预设与主服务程序建立通讯;客户端程序是指需要从第一服务程序和第二服务程序中状态为主的那个服务程序获取数据的主程序,其是主动去连接主服务程序的。使用中只需从服务程序获取其主辅状态,即会默认连接预设的主服务程序。当主服务程序出现问题时通讯中断,客户端程序自己主动去连接第二个服务程序并判断是否其为主服务程序状态。2)服务端通讯线程和客户端通讯线程建立通讯并实时交互第一服务程序和第二服务程序的主辅状态以及与客户端程序的通讯状态;具体来说,主要是监控第一服务程序与客户端程序的通讯状态,同时,服务端通讯线程和客户端通讯线程间进行心跳交换等实时双向通讯,第二服务程序此时为辅服务程序,其和客户端程序间没有通讯;其中,客户端程序与服务程序间,以及服务端通讯线程和客户端通讯线程间的通讯协议为是TCPsocket,这是面向连接的、可靠的传输层通讯协议,能及时获取通讯状态,为后续判断并进行主辅切换提供基础。3)当通讯异常或中断时,动态链接库程序同步切换第一服务程序和第二服务程序的主辅状态,其中,所述的动态链接库程序的服务端通讯线程和客户端通讯线程可更改第一服务程序和第二服务程序的主辅状态,当然,也可借助动态链接库程序的其他线程进行主辅状态修改。此时,客户端程序无法和第一服务程序通讯,同时,因为第二服务程序变更为主服务程序,客户端程序与第二服务程序建立通讯。其中,所述的通讯异常或中断为第一服务程序与客户端程序间的通讯或服务端通讯线程和客户端通讯线程间的通讯异常或中断。即,无论是因为何种原因,如软件故障或者硬件宕机等导致的何种通讯异常或中断,均可实时被检测并由第二服务程序对应的动态链接库程序主动至少单方面进行主辅状态切换,并建立与客户端程序的通讯。4)当服务端通讯线程和客户端通讯线程间的通讯恢复正常,服务端通讯线程和客户端通讯线程再次同步切换第一服务程序和第二服务程序的主辅状态,客户端程序主动与作为主服务程序的第一服务程序建立通讯,作为辅服务程序的第二服务程序与客户端程序断开通讯,进入热备状态,即系统在任何时候都能保证有且仅有一个主状态的服务程序。本专利技术简单高效地实现了微电网能量管理系统服务程序的双机热备功能,既不需要投资较大的服务器硬件集群,也不需要高复杂度不易维护的第三方通讯总线管理软件。只需要双机热备的服务程序分别加载一个动态链接库,调用一个非常简单的接口即可判断自身的主辅状态并进行主服务程序和辅服务程序间的主辅状态交互,应用实现简单,在网络故障或机器硬件故障导致主服务程序异常的情况,热备用的辅服务程序程序可实现由辅状态到主状态的秒级切换,完全满足微电网能量管理系统服务程序的双机热备需求。具体实施方式第一步:确定并实现TCPsocket通讯类CSocketComm。该类封装了socket通讯服务端、客户端建立连接以及数据交互的一般通用调用,用在模块切换动态库程序的服务端通讯线程与客户端通讯线程中,该类的主要成员函数定义如下。建立连接:QSint32Connect();设定监听多少个客户端,并开始监听:boolListen(shortclientCount);创建一个对象和客户端连接,只用于TCP服务器:CSocketComm*Accept();断开连接:boolClose();是否已经连接:unsignedcharGetConnectState(){returnm_ConnectState;本文档来自技高网...
微电网能量管理系统服务程序的双机热备方法

【技术保护点】
一种微电网能量管理系统服务程序的双机热备方法,其特征在于,包括以下步骤,1)与客户端程序对应的第一服务程序和第二服务程序分别调用动态链接库程序并对应创建服务端通讯线程和客户端通讯线程,预设第一服务程序为主服务程序,客户端程序与主服务程序通讯;2)服务端通讯线程和客户端通讯线程建立实时通讯并实时交互第一服务程序和第二服务程序的主辅状态;3)当通讯异常或中断时,服务端通讯线程和客户端通讯线程同步切换第一服务程序和第二服务程序的主辅状态,客户端程序与作为主服务程序的第二服务程序建立通讯。

【技术特征摘要】
1.一种微电网能量管理系统服务程序的双机热备方法,其特征在于,包括以下步骤,1)与客户端程序对应的第一服务程序和第二服务程序分别调用动态链接库程序并对应创建服务端通讯线程和客户端通讯线程,预设第一服务程序为主服务程序,客户端程序与主服务程序通讯;2)服务端通讯线程和客户端通讯线程建立实时通讯并实时交互第一服务程序和第二服务程序的主辅状态;3)当通讯异常或中断时,服务端通讯线程和客户端通讯线程同步切换第一服务程序和第二服务程序的主辅状态,客户端程序与作为主服务程序的第二服务程序建立通讯。2.如权利要求1所述的微电网能量管理系统服务程序的双机热备方...

【专利技术属性】
技术研发人员:赵学臣李露露高振雪
申请(专利权)人:天津天大求实电力新技术股份有限公司
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1