一种电力系统广域消息传输方法与流程

文档序号:11234774阅读:771来源:国知局
一种电力系统广域消息传输方法与流程

本发明涉及电力系统通信领域,特别是涉及一种电力系统广域消息传输的方法。



背景技术:

目前虽已建成覆盖国、分、省三级调度机构的智能电网调度控制系统,但其在系统间大量数据交互方面存在一些问题和瓶颈,缺乏统一、高效的跨调度机构实时消息传输机制,对于系统间需要共享的实时消息,例如电网状态信息、重要告警事件等,目前缺乏统一、高效的跨调度机构实时消息传输与监控机制。研究电力系统广域消息传输与监控技术成为广泛关注的热点问题。

因此,急需一种电力系统广域消息传输方法,满足在国分一体化系统协同、跨区消息同步等业务场景中应用跨调度机构推送实时消息的功能需求。



技术实现要素:

为解决上述技术问题,建立基于订阅/发布模型的实时消息跨调度机构传输和监控技术体系架构,建立高效、通用的电力系统广域消息传输和监控方法。基于订阅/发布模式实现的广域消息的一对一、一对多并发传输机制。

为实现上述发明目的,本发明提供一种提高广域消息传输安全性和可控性的电力系统广域消息传输方法。

一种电力系统广域消息传输的方法,本地调度机构的应用程序向目的调度机构的应用程序发送消息,包括以下步骤:

步骤一本地调度机构的应用程序调用本地广域消息总线接口将消息传递至本地消息代理;

步骤二本地消息代理将所述消息转发至本地广域消息代理;

步骤三本地广域消息代理找到目的调度机构并建立连接,将所述消息发送至目的调度机构的广域消息代理;

步骤四目的调度机构的广域消息代理将消息转发至本地消息代理,本地消息代理根据订阅信息查询到订阅所述消息的应用程序,将所述消息推送至所述应用程序。

进一步地,所述广域消息总线接口为应用程序提供动态订阅或取消订阅以及发送或接收广域消息的功能。

进一步地,所述本地消息代理完成消息从广域消息总线接口与广域消息代理之间的消息传输,应用程序通过广域消息总线接口将消息发送给本地消息代理,本地消息代理跟广域消息代理建立连接,将消息发送给广域消息代理。

进一步地,所述广域消息代理包括消息发送队列模块、消息发送线程模块、广域接收模块以及连接管理模块,完成消息在调度机构间的传输,

其中,消息发送队列模块由所述广域消息代理根据存在的调度机构预先分配消息发送队列资源,广域消息代理接收到本地消息代理发送的消息后根据消息目的调度机构的信息放入相应的消息发送队列中,并通知相应的消息发送线程进行发送。

进一步地,一个所述消息属于多个调度机构,分发至多个所述消息发送队列,实现所述消息的一对多传输。

进一步地,所述消息发送队列模块对发送失败的消息进行保存并重新发送,对于超过生存周期的消息进行删除。

进一步地,广域发送模块根据所述消息发送队列模块动态创建消息发送线程,每一个消息发送队列对应一个消息发送线程,不同消息队列中消息能够同时发生传输。

进一步地,所述广域接收模块监听广域发送模块的连接请求并接收广域发送模块的消息,通过所述本地消息代理发送给相应的应用程序。

进一步地,所述连接管理模块对调度机构间的连接进行管理,广域消息传输代理之间的数据传输链路进行复用,发送至同一目的调度机构的消息使用同一个数据传输链路;

对于设定时间内都无消息传输的空闲数据链路,主动监测并释放所述空闲数据链路的资源;

广域消息代理通过周期性发送和接收报文以检测数据传输链路是否正常通信,监测出由于服务器宕机或网络异常的原因产生的异常数据传输链路。

进一步地,广域消息代理采用消息监控模块对广域消息代理间的链路状况进行监视,所述消息监控模块包括消息监视模块和消息控制模块,其中,所述消息监视模块抓取每条消息传输链路的流量进行流量统计、流量查询,并生成流量异常告警。

进一步地,所述消息控制模块根据消息监测模块的流量统计结果,提供流量控制方法,制定消息动态优先级的消息传输方法,限制影响广域消息总线运行的异常流量。

采用上述技术方案,本发明具有如下有益效果:

第一,本发明通过开发广域消息总线,建立基于订阅/发布模式的实时消息跨调度机构传输技术体系架构,建立高效、通用的广域消息传输机制,以满足在国分一体化系统协同、跨区消息同步等业务场景中应用跨调度机构推送实时消息的功能需求。

第二,本发明的消息传输方法在调度机构间的消息传输时采用一系列链路管理策略,包括链路复用、空闲链路释放、异常链路检测、断开重连机制,从而保障调度机构间连接的高效、可用。

第三,本发明采用广域消息监控机制,实现传输链路状况监视、流量监控、消息统计等功能。保证了广域消息传输的安全、可控。

附图说明

图1为本发明电流系统广域消息传输方法的流程图;

图2为本发明广域消息传输方法模块结构示意示意图。

具体实施方式

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

实施例1

本发明提供了一种电力系统广域消息传输的方法,本地调度机构的应用程序想要向目的调度机构的应用程序发送消息时,图1为电力系统广域消息管理方法的流程图,如图所述,采用以下步骤:

步骤一本地调度机构的应用程序调用本地广域消息总线接口将消息传递至本地消息代理;

步骤二本地消息代理将所述消息转发至本地广域消息代理;

步骤三本地广域消息代理找到目的调度机构并建立连接,将所述消息发送至目的调度机构的广域消息代理;

步骤四目的调度机构的广域消息代理将消息转发至本地消息代理,本地消息代理根据订阅信息查询到订阅所述消息的应用程序,将所述消息推送至所述应用程序。

其中,广域云消息总线接口为应用提供动态订阅/取消订阅和发送/接收广域消息的功能。

本地消息代理完成消息在广域消息总线接口与广域消息代理间的消息传输。

广域消息代理完成消息在调度机构间的传输,通过多线程并发传输、消息队列缓冲区、连接管理等机制保证消息的实时、可靠、高效传输。

优选地,在广域消息代理中采用广域消息监控模块实现广域消息的传输链路状况监视、流量监控、消息统计等功能。

实施例2

广域消息代理包含消息发送队列模块、发送线程模块、广域接收模块、连接管理模块。

消息发送队列由广域消息代理根据存在的调度机构预先分配消息发送队列资源,广域消息代理接收到应用通过本地消息代理发送的消息后根据消息目的调度机构信息放入相应的消息发送队列中,并通知相应的发送线程进行发送。一个消息可以属于多个调度机构,并分发到多个消息发送队列中,实现消息的一对多传输。同时消息发送队列对于发送失败的消息进行持久化保存并尝试重新发送,对于超过生存周期的消息进行删除。

广域发送模块根据消息发送队列动态创建消息发送线程,每一个消息发送队列对应一个消息发送线程,实现了不同消息队列中消息的并发传输,充分利用服务器的多处理器、多核优势。

广域接收模块监听广域发送模块的连接请求,并接收广域发送模块的消息后通过本地消息代理发送给相应的应用程序。

连接管理模块负责对调度机构间的连接进行管理,主要包括:1)数据传输链路复用。广域消息代理间的数据传输链路是调度机构级别的,发往同一目地调度机构的消息均使用同一个数据传输链路,从而保证消息传输的顺序性。2)空闲链路检测,对于设定时间(例如10分钟)内都无消息传输的空闲数据链路,主动检测并释放该数据链路的相关资源。3)异常链路检测,广域消息代理通过周期性发送和接收心跳报文以检测数据传输链路是否能正常通信,该机制可以检测由于服务器宕机或网络异常等原因产生的异常数据传输链路。4)断开重连机制,对于异常断开的数据传输链路重新建立连接,并在连接建立成功后继续进行消息传输。

实施例3

消息监控模块主要包括消息监测模块和消息控制模块,其中消息监测模块是消息控制模块的基础。

消息监测模块构建了基于调度机构、节点和进程的立体化监控体系,面向域、态、通道等多维度信息传输要素,通过计算和分析广域云消息总线的吞吐量、网络延迟、丢包率、链路使用率等关键网络指标进行全方位监测。针对广域消息代理间的链路状况进行监视,抓取每条传输链路进行流量统计、流量查询和流量异常告警。实现了广域消息的传输链路状况监视、流量监测、消息统计等功能,辅助广域消息总线的故障诊断,有效提高了调度数据网上消息传输的可维护性。

消息控制模块根据消息监测的统计结果,提供基于节点、进程和通道的三种流量控制方法,制定以消息动态优先级为核心的流量控制策略,严格控制影响云总线运行的异常流量,提高带宽的利用率,节省网络资源,实现网络负载的合理分配,有效提高了调度数据网上消息传输的可控性。

以上所述实施例仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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