技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种电力现货市场多活业务的信息交互系统及方法与流程  >  正文

一种电力现货市场多活业务的信息交互系统及方法与流程

  • 国知局
  • 2024-08-30 14:22:26

本发明公开了一种电力现货市场多活业务的信息交互系统及方法,涉及电力现货市场云原生。

背景技术:

1、近年来电力现货市场的不断发展及极端风险灾害事件的发生,衍生了调度云上多节点现货市场系统多活容灾技术与开发的需求,然而目前的基础设施和建设水平难以满足这些需求。具体问题表现在以下四个方面:一是现有调度云上的业务系统的开发建设,均采用传统的调度云主节点单点部署模式,如何发挥“两地三中心”调度云统一架构的优势,建设云上多活业务系统仍是一个亟待解决的难题;二是在系统多节点部署环境下,数据、流量、接口、业务等均需对接系统多个节点,多节点系统间的一致性如何保证需要重点探索;三是市场环境下多方主体需实时报价并获取出清结果,如何实现多活现货系统间的灵活切换,保障在单一节点故障时的用户无感及市场业务稳定运行,也是一个关键问题;四是现货市场系统属于在运核心业务系统,在多节点系统建设过程中,如何保障在运主节点的稳定运行并实现主备节点信息交互,也是一个重大挑战。

2、现阶段对上述问题的解决方案很少,国内还没有多活现货系统,其它地方基本都是采用主备模式,因此没有成熟经验可以借鉴。

技术实现思路

1、本发明针对上述背景技术中的缺陷,提供一种电力现货市场多活业务的信息交互系统及方法,以解决建设云上多活业务系统、多节点系统间的一致性保证、多活现货系统间的灵活切换,保障在运主节点的稳定运行并实现主备节点信息交互的问题。

2、为实现上述目的,本发明采用的技术方案如下:一种电力现货市场多活业务的信息交互系统,包括:redis数据库、若干个数据中心和底层数据库;

3、所述redis数据库用于数据中心之间相互同步;

4、所述数据中心用于接收外部业务请求,并处理业务;

5、所述底层数据库用于存储业务处理数据;

6、所述数据中心均包括:集群协同模块、集群管理模块和应用任务模块;

7、所述应用任务模块用于具体应用业务的处理;

8、所述集群管理模块包括:第二感知模块和负载均衡模块;

9、所述第二感知模块用于实时所述应用任务模块的运行状态,并将其运行状态发送至数第一状态感知模块,

10、所述负载均衡模块用于接收外部业务请求,根据业务量要求将外部业务请求进行划分后的映射信息传输至任务协同模块中,所述映射信息为:各数据中心的应用任务模块与待处理业务的对应关系;

11、所述集群协同模块包括:第一感知模块和任务协同模块;

12、所述第一状态感知模块用于将接收的运行状态数据输入到redis数据库中进行多数据中心共享;

13、所述任务协同模块将映射信息写入redis数据库中的任务分派信息表,使其他数据中心的任务协同模块从redis数据库中获取相应映射信息,以使各数据中心根据映射信息获取到本数据中心的应用任务模块对应的待处理业务,启动相应的应用任务模块,并将业务处理结果数据输入底层数据库中进行汇总。

14、进一步的,所述根据业务量要求将外部业务请求进行划分的方法具体包括:

15、当业务量在数据中心计算范围内,由接收请求的本地数据中心进行业务处理,

16、当业务量超出数据中心计算范围,选择若干个数据中心数量将业务量进行平均分配。

17、进一步的,所述的应用任务模块包括:市场出清计算模块、数据管理模块和市场分析模块;

18、所述市场出清计算模块用于在电力现货市场中确定电力的交易量和价格;

19、所述数据管理模块用于从电力交易系统获取实时交易数据;

20、所述市场分析模块用于分析评价现货交易市场效率、竞争情况及运营情况。

21、一种电力现货市场多活业务的信息交互方法,包括:

22、第二状态感知模实时检测获取本地数据中心的应用任务模块的运行状态,并将所述运行状态发送到本地数据中心的第一状态感知模块,第一状态感知模块将运行状态数据发送到redis数据库中进行多数据中心共享;

23、当任一个第二感知模块检测到本地数据中心下的任一应用任务模块的运行状态信息存在异常时,将异常应用任务模块的运行状态信息传输至本地数据中心的第一感知模块;第一感知模块将异常应用任务模块的运行状态信息传输至redis数据库中,以使异地数据中心的第二感知模块从redis数据库中实时获取到该异常的应用任务模块的运行状态信息,并根据异地数据中心预设的优先级,启动最高优先级数据中心的应用任务模块替换异常应用任务模块。

24、进一步的,当任一个数据中心的负载均衡模块接收外部业务请求,根据业务量要求将外部业务请求进行划分后的映射信息传输至任务协同模块中,任务协同模块将映射信息输入到redis数据库中的任务分派信息表,

25、使其他数据中心的任务协同模块从redis数据库中获取相应映射信息,以使各数据中心根据映射信息获取到本数据中心的应用任务模块对应的待处理业务,启动相应的应用任务模块,并将业务处理结果数据输入底层数据库中进行汇总。

26、进一步的,所述预设的优先级的具体方法:根据应用任务模块在各中心资源占用率(节点cpu和内存占用)进行实时排序,资源占用率越低优先级越高;

27、每个数据中心提供界面工具可以配置各个应用任务在各中心运行的优先级,用数字1-9表示,数字越低优先级越高,配置后会调用redis的写入接口将上述配置的各应用任务在各数据中心的运行优先级信息写入到redis数据库中,各数据中心可以通过调用redis读取接口获取到各应用任务在各数据中心的优先级数据。

28、进一步的,启动最高优先级数据中心的应用任务接替异常应用任务的具体方法:

29、各应用任务模块将处理的业务数据实时存入云平台底层的数据库中,使各数据中心进行数据共享,

30、当任一应用任务发生模块异常时,本地数据中心的第二感知模块从redis数据库中实时获取到该异常的应用任务的运行状态信息,并根据异地数据中心预设的优先级,启动最高优先级数据中心的应用任务接替异常应用任务模块;

31、新启动的应用任务模块会从云平台底层的数据库中获取到之前异常应用任务模块输入的最新业务数据,并按照此业务数据接着处理余下的业务,同时也会将处理结果数据实时写入到云平台底层数据库中。

32、进一步的,

33、第二感知模块与第一感知模块之间的传输方法具体为:第二感知模块在获取到本数据中心应用任务的运行状态后,将有应用任务模块运行状态的网络消息报文发送给第一感知模块,

34、所述网络消息报文包括:带有源发送节点(即第二感知模块程序所在节点)、源发送进程名(即第二感知模块具体进程)、目标节点(即第一感知模块程序所在节点)、目标进程(即第一感知模块具体进程)和各应用任务模块运行状态数据(应用任务名称和该任务状态组成的对象),

35、所述网络消息报文会将带有的目标节点和目标进程发送给第一感知模块,第一感知模块在接收到该消息后进行解析,检查网络消息报文的目标节点和目标进程是否和自身符合,最后再解析出各应用任务模块的运行状态数据。

36、进一步的,映射信息具体为:每个数据中心的应用任务模块被分配处理相应业务,并形成数据中心-应用任务模块的组合名称和数据中心需处理的业务数据标识列表的对应键值对。

37、进一步的,数据中心根据映射信息分别启动相应的应用任务具体为:

38、数据中心根据本身中心名称找寻本中心名对应的要处理的业务数据标识列表,并启动键中包含的应用任务名称的相应任务,数据中心会将所需处理的业务数据标识列表通过网络消息报文传输给启动的应用任务模块,该应用任务模块将处理本中心被分配的业务,并将处理结果数据存入底层的数据库。

39、有益效果:本发明通过多中心应用状态感知与同步、多中心应用实例故障切换、多中心应用负载均衡和任务协同等方法,实现基于云原生的电力现货市场多活系统的平台构建。与现有技术相比,可以解决建设云上多活业务系统、多节点系统间的一致性保证、多活现货系统间的灵活切换,保障在单一节点故障时的用户无感及市场业务稳定运行、保障在运主节点的稳定运行并实现主备节点信息交互的问题。

本文地址:https://www.jishuxx.com/zhuanli/20240830/281704.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。