CN116827760A - 主备集群切换方法、装置、电子设备及可读存储介质 - Google Patents

主备集群切换方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN116827760A
CN116827760A CN202310617720.1A CN202310617720A CN116827760A CN 116827760 A CN116827760 A CN 116827760A CN 202310617720 A CN202310617720 A CN 202310617720A CN 116827760 A CN116827760 A CN 116827760A
Authority
CN
China
Prior art keywords
cluster
switching
main
standby
primary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310617720.1A
Other languages
English (en)
Inventor
罗干
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Merchants Bank Co Ltd
Original Assignee
China Merchants Bank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Merchants Bank Co Ltd filed Critical China Merchants Bank Co Ltd
Priority to CN202310617720.1A priority Critical patent/CN116827760A/zh
Publication of CN116827760A publication Critical patent/CN116827760A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0681Configuration of triggering conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了一种主备集群切换方法、装置、电子设备及可读存储介质,该方法包括步骤:获取主集群对应的异常的发生特征;若所述发生特征符合预设集群切换条件,则将提供服务的主体由所述主集群切换至备用集群。从而实现自动化地获取主集群对应的发生特征,并在发生特征符合预设集群切换条件时,自动化地进行主备集群的切换。而无需在监控到主集群故障时,提醒设备运维人员进行主备集群切换。因此,本申请实施例能够提高在主集群故障后,进行主备集群切换的速度。

Description

主备集群切换方法、装置、电子设备及可读存储介质
技术领域
本申请涉及计算机领域,尤其涉及一种主备集群切换方法、装置、电子设备及可读存储介质。
背景技术
近年来,随着APP(Application,应用)应用功能的愈加丰富,APP中包括各种系统,同时一个系统内又涵盖了很多微服务,不同微服务部署在不同机器上,由这些机器构成集群,各机器上的登录会话信息能够在集群中进行共享。例如某银行的手机银行APP,其上包含了投资理财、活动平台、社区、生活两票、商城、小程序等系统。其中,集群包括但不限于Redis集群、MemCache集群。
相关技术中,是以双集群的形式进行部署的,即部署有主集群和备用集群。其中,主集群为各机器提供服务时,备用集群处于备用状态,而不为各机器提供服务。在监控系统监控到主集群故障时,监控系统会提醒设备运维人员进行主备集群切换,在切换后,主集群停止为各机器提供服务,而由备用集群为各机器提供服务。然而,从监控系统监控到主集群故障后,至完成主备集群切换的过程中,需要花费大量的时间,从而导致服务的流程终止,客户体验不佳。
因此,实际应用中需要一种能够在主集群故障后,快速进行主备集群切换的方案。
发明内容
有鉴于此,本申请提供一种主备集群切换方法、装置、电子设备及可读存储介质,旨在提高在主集群故障后,进行主备集群切换的速度。
为实现上述目的,本申请提供一种主备集群切换方法,所述主备集群切换方法包括以下步骤:
获取主集群对应的异常的发生特征;
若所述发生特征符合预设集群切换条件,则将提供服务的主体由所述主集群切换至备用集群。
示例性的,其特征在于,
所述发生特征包括发生频率,所述发生频率为单位时间窗口内所述异常的发生次数,所述获取主集群对应的异常的发生特征,包括:
在单位时间窗口内,获取所述异常的发生次数。
示例性的,所述主集群包括本地的主集群和异地的主集群,所述获取主集群对应的异常的发生特征之前,包括:
获取用户终端发起的网络请求对应的数据;
将所述数据写入所述本地的主集群和所述异地的主集群。
示例性的,所述将所述数据写入所述本地的主集群和所述异地的主集群,包括:
通过主线程将所述数据写入所述本地的主集群,并通过异步线程将所述数据写入所述异地的主集群。
示例性的,所述将所述数据写入所述本地的主集群和所述异地的主集群之后,包括:
将所述数据写入所述本地的主集群以及所述本地的备用集群。
示例性的,所述主备集群切换方法还包括:
获取用户终端发送的用户信息变化的消息;
基于消息中间件分发所述消息至消费者账号对应的消息队列。
示例性的,所述主备集群切换方法还包括:
获取用户账号在登录时的第一设备信息;
若所述第一设备信息与所述用户账户在首次登录时的第二设备信息不同,则生成提醒信息,并发送所述提醒信息至所述第二设备信息对应的设备。
示例性的,为实现上述目的,本申请还提供一种主备集群切换装置,所述主备集群切换装置包括:
第一获取模块,用于获取主集群对应的异常的发生特征;
切换模块,用于若所述发生特征符合预设集群切换条件,则将提供服务的主体由所述主集群切换至备用集群。
示例性的,为实现上述目的,本申请还提供一种电子设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的主备集群切换程序,所述主备集群切换程序配置为实现如上所述的主备集群切换方法的步骤。
示例性的,为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有主备集群切换程序,所述主备集群切换程序被处理器执行时实现如上所述的主备集群切换方法的步骤。
与相关技术中,在监控系统监控到主集群故障时,监控系统会提醒设备运维人员进行主备集群切换相比,本申请实施例通过获取主集群对应的异常的发生特征;若所述发生特征符合预设集群切换条件,则将提供服务的主体由所述主集群切换至备用集群。从而实现自动化地获取主集群对应的发生特征,并在发生特征符合预设集群切换条件时,自动化地进行主备集群的切换。而无需在监控到主集群故障时,提醒设备运维人员进行主备集群切换。可以理解,人工收到监控系统的提醒,并由此对主备集群进行切换的过程,所花费的时间较长,即该提醒传达到设备运维人员以及通过人工对主备集群进行切换的速度慢,而自动化地进行主备集群的切换无需进行提醒的传达并且切换速度快,因此,本申请实施例能够提高在主集群故障后,进行主备集群切换的速度。
附图说明
图1为本申请主备集群切换方法第一实施例的流程示意图;
图2为本申请主备集群切换方法中服务降级逻辑的流程示意图;
图3是本申请主备集群切换方法中会话中心网关处理网络请求的流程示意图;
图4是本申请主备集群切换方法中Netty接收并处理网络请求的流程示意图;
图5是本申请主备集群切换方法中消息中间件的原理示意图;
图6是本申请主备集群切换方法中会话中心网关进行异步两地双写的流程示意图;
图7是本申请主备集群切换方法中跨区访问的流程示意图;
图8是本申请主备集群切换方法中短信提醒多点登录的流程示意图;
图9是本申请主备集群切换方法中整体流程的流程示意图;
图10为本申请实施例方案涉及的硬件运行环境的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供一种主备集群切换方法,参照图1,图1为本申请主备集群切换方法第一实施例的流程示意图。
本申请实施例提供了主备集群切换方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例应用于会话中心网关中,该会话中心网关连接用户终端和集群,可以理解,该集群包括主集群和备用集群,会话中心网关实现了用户终端和集群的间接连接。
步骤S110,获取主集群对应的异常的发生特征。
需要说明的是,主集群是当前和会话中心网关建立有连接的集群,即会话中心网关在处理网络请求(HTTP(Hyper Text Transfer Protocol,超文本传输协议)请求)后,通过主集群对该网络请求进行响应;备用集群当前未与会话中心网关建立有连接,其处于备用状态,在主集群因故障挂掉后,会话中心网关与主集群的连接可以切换至与备用集群的连接。其中,网络请求包括但不限于对主集群进行数据的增、删、改、查的操作,网络请求由用户终端发起。
示例性的,异常包括但不限于通讯异常和集群主动报错。其中,通讯异常包括但不限于请求超时和取数据超时,集群主动报错包括但不限于集群不可用和集群连接失败。
示例性的,发生特征包括但不限于发生频率和发生间隔。
发生频率即单位时间窗口内异常的发生次数。例如单位时间窗口为5分钟,在这个单位时间窗口内异常的发生次数为5次。可以理解,在当前单位时间窗口结束,即下一个单位时间窗口开始时,当前单位时间窗口内异常的发生次数重新置为零,即在下一个单位时间窗口开始时,发生次数重新开始计算。
发生间隔即相邻异常之间发生时的时间间隔。例如存在异常1和异常2,异常1先于异常2发生,异常1和异常2之间发生时的时间间隔为1分钟。
步骤S120,若发生特征符合预设集群切换条件,则将提供服务的主体由主集群切换至备用集群。
预设集群切换条件即为将提供服务的主体由主集群切换至备用集群的触发条件。可以理解,对于发生特征为发生频率时,预设集群切换条件即为发生频率大于预设频率阈值,即在发生频率大于预设频率阈值时,发生频率符合预设集群切换条件,而在发生频率小于或等于预设频率阈值时,发生频率未符合预设集群切换条件。相应地,对于发生特征为发生间隔时,预设集群切换条件即为发生间隔小于预设间隔阈值,即在发生间隔小于预设间隔阈值时,发生间隔符合预设集群切换条件,而在发生间隔大于或等于预设间隔阈值时,发生间隔未符合预设集群切换条件。示例性的,预设频率阈值可以为1次/分钟、2次/分钟等,预设间隔阈值可以为5分钟、4分钟等,预设频率阈值和预设间隔阈值具体为何值可以根据需要进行设置,本实施例不作具体限定。
例如主集群为云平台Redis集群,备用集群为PAAS平台Redis集群,即提供服务的主体为云平台Redis集群,而不是PAAS平台Redis集群。若发生频率大于预设频率阈值,则确定发生特征符合预设集群切换条件,此时将提供服务的主体由云平台Redis集群切换至PAAS平台Redis集群。
参照图2,以下以发生特征为发生频率为例,对服务降级的逻辑进行阐述:
服务降级是针对主集群而言的,即集群由主集群降级为备用集群。此时的主集群为云平台Redis集群,备用集群为PAAS平台Redis集群。在一单位时间窗口内,在接收到用户终端发起的HTTP请求时,会话中心网关先判断此时的发生频率是否超过预设频率阈值,若超过,则由云平台Redis集群切换至PAAS(Platform as a Service,平台即服务)平台Redis集群,若未超过,则继续将云平台Redis集群作为提供服务的主体。可以理解,异常的发生频率即单位时间窗口内发生异常的异常次数,“异常次数超过阈值”即“发生频率大于预设频率阈值”。在确定提供服务的主体后,由该确定的主体响应该HTTP请求,并将该HTTP请求的处理结果反馈至会话中心网关。会话中心网关接收到处理结果后,将该处理结果反馈至用户终端,并等待下一个HTTP请求,直至时间窗口结束,将异常次数清零,并开始下一次时间窗口。需要说明的是,若时间窗口内,异常次数超过阈值,则在下一次时间窗口中,主集群为PAAS平台Redis集群,相应地,备用集群为云平台Redis集群;若时间窗口内,异常次数未超过阈值,则在下一次时间窗口中,主集群仍然为云平台Redis集群,备用集群仍然为PAAS平台Redis集群。
与相关技术中,在监控系统监控到主集群故障时,监控系统会提醒设备运维人员进行主备集群切换相比,本申请实施例通过获取主集群对应的异常的发生特征;若发生特征符合预设集群切换条件,则将提供服务的主体由主集群切换至备用集群。从而实现自动化地获取主集群对应的发生特征,并在发生特征符合预设集群切换条件时,自动化地进行主备集群的切换。而无需在监控到主集群故障时,提醒设备运维人员进行主备集群切换。可以理解,人工收到监控系统的提醒,并由此对主备集群进行切换的过程,所花费的时间较长,即该提醒传达到设备运维人员以及通过人工对主备集群进行切换的速度慢,而自动化地进行主备集群的切换无需进行提醒的传达并且切换速度快,因此,本申请实施例能够提高在主集群故障后,进行主备集群切换的速度。
示例性的,以下对网络请求的发起及响应的过程进行简单阐述:
在用户终端提交网络请求后,会话中心网关接收并处理该网络请求,从而对该网络请求进行响应,即根据处理结果从集群中取数据或者是向集群中存数据。在会话中心网关处理该网络请求时,处理方式包括但不限于:私有协议解析、权限控制、报文转换。并且根据各个业务的特定规则将处理结果分发到集群上,从而完成数据存/取操作。当然,对网络请求的响应的过程还可以包括将响应的结果反馈回用户终端。例如对网络请求进行响应为根据处理结果从集群中取数据,则响应的结果为取得的数据,因此,对网络请求的响应的过程还可以包括将该数据反馈回用户终端。
需要说明的是,会话中心网关包括网关请求处理框架,该网关请求处理框架包括Netty处理模块、熔断机制和Redis API(Application Programming Interface,应用程序编程接口)。其中,熔断机制为在发生特征符合预设集群切换条件时,将提供服务的主体由主集群切换至备用集群的机制。该熔断机制属于网关请求处理框架的一部分,熔断机制包括但不限于Hystrix熔断、Sentinel熔断。
参照图3,会话中心网关包括网关请求处理框架,该网关请求处理框架包括Netty处理模块、Sentinel熔断和Redis API(Application Programming Interface,应用程序编程接口)。其中,Netty为高性能、高可靠的网络通讯框架,可以快速、高效、简单地进行网络通讯和数据传输。在网络请求到达后,由Netty处理模块负责接收与响应,从而保证请求的高并发处理。其中,Redis API为会话中心网关与集群进行数据交互的接口。
需要说明的是,Netty内部采用NioEventLoop模型,并使用Boss Group与WorkerGroup两组线程池处理网络请求。其中,Boss Group专门负责接收用户终端的连接,WorkerGroup专门负责网络请求的处理。这种方式的优势在于,可以最大程度地避免出现复杂的多线程同步问题和避免多线程/进程的切换开销。其中,Boss Group为父线程池,WorkerGroup为子线程池,Boss Group与Worker Group的数据交互简单、职责明确,父线程池中的线程只需要接收新连接,子线程池中的线程完成后续的业务处理;同时线程池的复用性与扩展性好,可以方便的通过增加线程个数来充分的利用CPU资源,从而提高并发访问量。
参照图4,Client发起网络请求至会话中心网关后,由Boss Group接收该网络请求,Boss Group中的线程经过select以及processSelectedKeys步骤后,注册channel到Worker Group的Selector,此时,Boss Group继续处理其他的网络请求(runAllTasks步骤)。而后Worker Group继续处理该网络请求,Worker Group中的线程同样需要进行select、processSelectedKeys以及runAllTasks步骤,并在processSelectedKeys步骤后,由Pipeline中的Channel Handler进行后续处理。
示例性的,会话中心网关还可以包括消息中间件,该消息中间件包括但不限于ActiveMQ、RabbitMQ和RocketMQ。在会话中心网关获取用户终端发送的用户信息变化的消息后,会话中心网关基于该消息中间件将消息分发至消费者账号对应的消息队列。
需要说明的是,消息中间件用于接收生产者的消息,并将该消息分发至消费者。本申请实施例中,生产者和消费者均为产品,该产品为APP中各种系统,例如某银行APP中的投资理财、活动平台、社区、生活两票、商城、小程序,又如某音乐APP中的听书、歌单、摇滚等。
对于所有申请对接会话中心网关的产品,会话中心网关均会配置一个消费者账号,每一消费者账号对应一个专属的消息队列,即各消费者账号对应的消息队列均不相同。本申请实施例中,由于存在多个系统,因此,消费者和生产者之间是多对一的关系,即生产者生成信息后,会话中心网关会将该信息分发到多个消费者,该分发过程是会话中心网关主动进行的。该信息为用户信息发生变化以及具体是如何变化的,例如对于银行APP,该信息可以为银行卡列表发生更新,更新为银行卡由一张变为两张,该信息还可以为实名标志发生变更,由标志1变更为标志2。
参照图5,消息中间件为RabbitMQ,在会话中心网关接收到LA04(一种用户终端)发送的用户信息变化的消息后,由其中的RabbitMQ接收消息并分发至各个产品对应的消息队列,这可以使得各产品能够消费对应的消息队列中的消息,从而进行会话更新、延长时效等操作,进而能够使各产品能够及时获取到变化后的用户信息,并且能够确保各产品之间发生重复消费消息、消息丢失等问题。
示例性的,一般一个行政区划中的地级市中的用户终端、会话中心网关和集群属于一个区域。会话中心网关处理同属一个区域的用户终端的网络请求的过程,属于处理本地的网络请求。相应地,若网络请求是其他区域的用户终端发起的,则会话中心网关处理的是异地的网络请求。其中,在网络请求与向集群写入数据相关时,用户终端在发起网络请求之后,会向会话中心网关发送数据。
本申请实施例中,会话中心网关在向集群写入数据时,除了写入本地的集群外,还写入异地的集群,即实现了异地跨区写入。例如用户终端1、会话中心网关1、集群1、用户终端2、会话中心网关2和集群2,其中,用户终端1、会话中心网关1和集群1属于地级市1,用户终端2、会话中心网关2和集群2属于地级市2。在会话中心网关1接收到用户终端1发起的网络请求后,可以向集群1写入数据,也可以在此基础上还向集群2写入数据。其中,集群1和集群2均分别包括相应的主集群和备用集群。
需要说明的是,在写入数据时,写入主集群。
需要说明的是,在会话中心网关将数据写入异地的集群时,可以是一个异地的集群,也可以是多个异地的集群。例如存在地级市1、地级市2和地级市3,在会话中心网关将数据写入本地的地级市1中的集群1时,还可以将该数据写入异地的地级市2中的集群2,以及写入异地的地级市3中的集群3。
示例性的,在会话中心网关将数据写入异地的集群以及写入本地的集群时,可以均通过主线程来写入。
示例性的,在会话中心网关将数据写入异地的集群时,是通过异步线程来写入的,即不使用主线程来写入(写入本地的集群时,使用主线程写入),从而解除了对主线程的阻塞,并使得主线程的并发性能、耗时等不受影响。同时,由于主线程和异步线程几乎可以同时对相应的集群进行数据写入,写入的实时性也得到保障,使得延迟也控制在可接受范围内。可以理解,延迟主要来自传输过程,因此,为了进一步降低延迟,还可以选择地理上离本地最近的异地进行数据的异步写入。
参照图6,网络请求用于存储数据,在地级市2为本地时,地级市1为异地,在由用户终端2发起网络请求至会话中心网关2后,会话中心网关2既将数据本地写入地级市2的主集群2,也异地写入地级市1的主集群1;在地级市1为本地时,地级市2为异地,在由用户终端1发起网络请求至会话中心网关1后,会话中心网关1既将数据本地写入地级市1的主集群1,也异地写入地级市2的主集群2。
示例性的,在用户终端查询数据时,存在本地的会话中心网关或者是集群挂掉的情况,而由于该数据已通过异地的集群进行数据的备份,此时用户终端可以直接访问该异地的会话中心网关,以从异地的集群中正常查询到数据。从而实现了APP的高可用。
参照图7,在地级市2的会话中心网关2或者是主集群2及备用集群2挂掉之后,若用户终端2想查询集群2中的数据,则可以跨区访问会话中心网关1。可以理解,由于主集群1中在异步异地写入的过程中,存储有用户终端2写入的数据,因此能够从主集群1中查询数据。此外,即使此时主集群1也因故障挂掉,还可以通过熔断机制进行主备互换,即将提供服务的主体由主集群1切换至备用集群1,从而进一步保障应用的高可用性。可以理解,在切换完成后,备用集群1变更为新的主集群1,而主集群1变更为新的备用集群1。
示例性的,为提高主集群中的数据和备用集群中的数据的同步率,保证数据的一致性,在获取用户终端发起的网络请求对应的数据后,除了异步异地写入该数据外,还可以异步本地写入该数据。即数据在通过主线程写入主集群时,还通过异步线程写入备用集群,从而在集群切换后,能够使用户终端的用户继续正常使用APP,而不会因数据不同步而需要退出APP并重新登录。
示例性的,用户账号在用户终端A首次登录时,除存储会话Token(令牌)以外,还获取用户设备A的第二设备信息,并把该第二设备信息以键值对“LoginId:[AppId,···]”进行存储,该键值对的过期时间与Token的过期时间一致。若用户账号在用户设备B再登录,则获取用户设备B的第一设备信息,并确定第一设备信息和第二设备信息是否相同。显然,此时可以获取到该LoginId已经有第二设备信息在缓存中,且与第一设备信息不同,可以判定为多点登录,此时生成提醒信息,并通过短信、邮件等方式发送到用户设备A,以提醒用户其用户账号在多个设备上进行登录。此外,还将第二设备信息更新到键值对“LoginId:[AppId,···]”中,在用户在用户终端A退出登录时,会话中心网关会把会话信息和第二设备信息一起清除。
参照图8,以APP为手机银行为例,用户账号通过用户设备A首次登录手机银行后,又通过用户设备B登录。手机银行将相应的Token以及用户设备A的AppId和用户设备B的AppId发送至会话中心(即会话中心网关),会话中心将相应的Token以及用户设备A的AppId和用户设备B的AppId,以键值对的形式存储至Redis集群。并在用户账号通过用户设备B登录手机银行时,通过短连接的形式发送至短信发送服务,之后短信发送服务通过长链接的形式发送至通知平台,通知平台最终以短信的形式将提醒信息发送至用户设备A,以提醒用户其用户账号在多个设备上进行登录。其中,在用户账号登录手机银行后,会话中心还自动登录一网通或一卡通(Cif户口)以及信用卡(信用卡LU48)。
其中,短连接是在存在请求时临时建立的,即为每次请求都要建立的连接。而长连接是一直存在的连接,不需要临时建立,直接使用即可。
参照图9,以下以一可选实施例对本申请实施例的流程进行简要阐述:
手机银行、社区、活动平台等属于客户端,其部署于用户终端上,客户端向会话中心网关发起网络请求后,由SLB(Server Load Balance,服务器负载均衡)进行任务的分发,以分发至相应的Proxy Servers(代理服务器)上。其中,会话中心网关为Proxy Servers。之后会话中心网关通过私有协议解析、热Key、大Key处理、通用规则过滤等、解析请求渠道、获得实际的存储地址、私有协议报文转为指定缓存数据库报文格式,进行数据操作等操作对网络请求进行接收及处理,其中,私有协议解析、热Key、大Key处理、通用规则过滤等、解析请求渠道、获得实际的存储地址等操作可以通过Config Server(配置中心)进行配置,并最终由NIO线程池和JedisPool线程池与集群进行交互,其中,集群为异地多环境部署的集群。
此外,本申请还提供一种主备集群切换装置,该主备集群切换装置包括:
第一获取模块,用于获取主集群对应的异常的发生特征;
切换模块,用于若发生特征符合预设集群切换条件,则将提供服务的主体由主集群切换至备用集群。
示例性的,发生特征包括发生频率,发生频率为单位时间窗口内异常的发生次数,第一获取模块具体用于:
在单位时间窗口内,获取异常的发生次数。
示例性的,主集群包括本地的主集群和异地的主集群,该主备集群切换装置还包括:
第二获取模块,用于获取用户终端发起的网络请求对应的数据;
第一写入模块,用于将数据写入本地的主集群和异地的主集群。
示例性的,该第一写入模块具体用于:
通过主线程将数据写入本地的主集群,并通过异步线程将数据写入异地的主集群。
示例性的,该主备集群切换装置还包括:
第二写入模块,用于将数据写入本地的主集群以及本地的备用集群。
示例性的,该主备集群切换装置还包括:
第三获取模块,用于获取用户终端发送的用户信息变化的消息;
分发模块,用于基于消息中间件分发消息至消费者账号对应的消息队列。
示例性的,该主备集群切换装置还包括:
第四获取模块,用于获取用户账号在登录时的第一设备信息;
发送模块,用于若第一设备信息与用户账户在首次登录时的第二设备信息不同,则生成提醒信息,并发送提醒信息至第二设备信息对应的设备。
本申请主备集群切换装置具体实施方式与上述主备集群切换方法各实施例基本相同,在此不再赘述。
此外,本申请还提供一种电子设备。如图10所示,图10是本申请实施例方案涉及的硬件运行环境的结构示意图。
示例性的,图10即可为电子设备的硬件运行环境的结构示意图。
如图10所示,该电子设备可以包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001、通信接口1002和存储器1003通过通信总线1004完成相互间的通信,存储器1003,用于存放计算机程序;处理器1001,用于执行存储器1003上所存放的程序时,实现主备集群切换方法的步骤。
上述电子设备提到的通信总线1004可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线1004可以分为地址总线、数据总线和控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1002用于上述电子设备与其他设备之间的通信。
存储器1003可以包括随机存取存储器(Random Access Memory,RMD),也可以包括非易失性存储器(Non-Volatile Memory,NM),例如至少一个磁盘存储器。可选的,存储器1003还可以是至少一个位于远离前述处理器1001的存储装置。
上述的处理器1001可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请电子设备具体实施方式与上述主备集群切换方法各实施例基本相同,在此不再赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有主备集群切换程序,所述主备集群切换程序被处理器执行时实现如上所述的主备集群切换方法的步骤。
本申请计算机可读存储介质具体实施方式与上述主备集群切换方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种主备集群切换方法,其特征在于,所述主备集群切换方法包括以下步骤:
获取主集群对应的异常的发生特征;
若所述发生特征符合预设集群切换条件,则将提供服务的主体由所述主集群切换至备用集群。
2.如权利要求1所述的主备集群切换方法,其特征在于,
所述发生特征包括发生频率,所述发生频率为单位时间窗口内所述异常的发生次数,所述获取主集群对应的异常的发生特征,包括:
在单位时间窗口内,获取所述异常的发生次数。
3.如权利要求1所述的主备集群切换方法,其特征在于,所述主集群包括本地的主集群和异地的主集群,所述获取主集群对应的异常的发生特征之前,包括:
获取用户终端发起的网络请求对应的数据;
将所述数据写入所述本地的主集群和所述异地的主集群。
4.如权利要求3所述的主备集群切换方法,其特征在于,所述将所述数据写入所述本地的主集群和所述异地的主集群,包括:
通过主线程将所述数据写入所述本地的主集群,并通过异步线程将所述数据写入所述异地的主集群。
5.如权利要求3所述的主备集群切换方法,其特征在于,所述将所述数据写入所述本地的主集群和所述异地的主集群之后,包括:
将所述数据写入所述本地的主集群以及所述本地的备用集群。
6.如权利要求1所述的主备集群切换方法,其特征在于,所述主备集群切换方法还包括:
获取用户终端发送的用户信息变化的消息;
基于消息中间件分发所述消息至消费者账号对应的消息队列。
7.如权利要求1所述的主备集群切换方法,其特征在于,所述主备集群切换方法还包括:
获取用户账号在登录时的第一设备信息;
若所述第一设备信息与所述用户账户在首次登录时的第二设备信息不同,则生成提醒信息,并发送所述提醒信息至所述第二设备信息对应的设备。
8.一种主备集群切换装置,其特征在于,所述主备集群切换装置包括:
第一获取模块,用于获取主集群对应的异常的发生特征;
切换模块,用于若所述发生特征符合预设集群切换条件,则将提供服务的主体由所述主集群切换至备用集群。
9.一种电子设备,其特征在于,所述电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的主备集群切换程序,所述主备集群切换程序配置为实现如权利要求1至7中任一项所述的主备集群切换方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有主备集群切换程序,所述主备集群切换程序被处理器执行时实现如权利要求1至7中任一项所述的主备集群切换方法的步骤。
CN202310617720.1A 2023-05-29 2023-05-29 主备集群切换方法、装置、电子设备及可读存储介质 Pending CN116827760A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310617720.1A CN116827760A (zh) 2023-05-29 2023-05-29 主备集群切换方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310617720.1A CN116827760A (zh) 2023-05-29 2023-05-29 主备集群切换方法、装置、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN116827760A true CN116827760A (zh) 2023-09-29

Family

ID=88140379

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310617720.1A Pending CN116827760A (zh) 2023-05-29 2023-05-29 主备集群切换方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN116827760A (zh)

Similar Documents

Publication Publication Date Title
US20210383439A1 (en) Method and system for interaction servicing
CN108388479B (zh) 延迟消息推送方法、装置、计算机设备及存储介质
US10609159B2 (en) Providing higher workload resiliency in clustered systems based on health heuristics
CN111090699A (zh) 业务数据的同步方法和装置、存储介质、电子装置
CN113641511B (zh) 一种消息通信方法和装置
US7870425B2 (en) De-centralized nodal failover handling
CN112118315A (zh) 数据处理系统、方法、装置、电子设备和存储介质
CN102968310A (zh) 一种一体化高性能应用软件架构及构建方法
CN109783151B (zh) 规则变更的方法和装置
CN108712457A (zh) 基于Nginx反向代理的后端服务器动态负载调整方法及装置
CN111865632B (zh) 分布式数据存储集群的切换方法及切换指令发送方法和装置
CN112486707B (zh) 基于Redis的消息异步消费方法及装置
CN111212135A (zh) 消息订阅方法、装置、系统、电子设备及存储介质
CN111200606A (zh) 深度学习模型任务处理方法、系统、服务器及存储介质
US8977595B1 (en) Message-recovery file log locating and monitoring
CN108874531B (zh) 用于熔断服务的方法、装置、系统及电子设备
CN109428926B (zh) 一种调度任务节点的方法和装置
CN111510480A (zh) 一种请求发送方法、装置以及第一服务器
CN116932505A (zh) 一种数据查询方法、数据写入方法、相关装置和系统
JP2005301436A (ja) クラスタシステムおよびクラスタシステムにおける障害回復方法
CN113326100A (zh) 一种集群管理方法、装置、设备及计算机存储介质
CN111835809B (zh) 工单消息分配方法、装置、服务器及存储介质
CN112631756A (zh) 一种应用于航天测控软件的分布式调控方法及装置
Chen et al. QoS evaluation of JMS: An empirical approach
CN115834668B (zh) 集群节点控制方法、装置、设备、存储介质和程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination