状态切换方法和装置制造方法及图纸

技术编号:20824841 阅读:33 留言:0更新日期:2019-04-10 07:14
本发明专利技术实施例提供一种状态切换方法和装置,该状态切换方法包括接收各所述第二服务器发送的组播报文;针对每个组播报文,从所述组播报文中提取发送该组播报文的第二服务器的优先级;将自身的优先级与提取到的各所述组播报文中的优先级进行比对,并在比对结果满足状态切换条件时进行状态切换。本发明专利技术基于组播同步的方式,实现服务器的状态切换,能够有效缩短状态切换时间。

【技术实现步骤摘要】
状态切换方法和装置
本专利技术涉及通信
,具体而言,涉及一种状态切换方法和装置。
技术介绍
现有的冗余备份系统中的各服务器是基于vrrp协议(VirtualRouterRedundancyProtocol,虚拟路由冗余协议)来实现服务器高可用方案,进而避免单点故障,如一旦主服务器出现故障或宕机现象时,需要备用服务器切换至主服务状态以接管虚拟IP(InternetProtocol,网际协议)并继续向客户端提供服务,但现有的服务器状态检测和切换过程过长,导致无法满足一些更高时间精度的服务或者业务切换需求。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种基于组播同步方式实现的状态切换方法和装置,以改善上述问题。一方面,本专利技术较佳实施例还提供一种状态切换方法,应用于第一服务器,该第一服务器能够与多个第二服务器之间互相通信,所述状态切换方法包括:接收各所述第二服务器发送的组播报文;针对每个组播报文,从所述组播报文中提取发送该组播报文的第二服务器的优先级;分别将自身的优先级与提取到的各所述组播报文中的优先级进行比对,并在比对结果满足状态切换条件时进行状态切换。进一步地,所述第一服务器中预设有用于与提取到的第二服务器的优先级进行一一比对的本地优先级;所述分别将自身的优先级与提取到的各所述组播报文中的优先级进行比对的步骤,包括:分别判断提取到的各所述组播报文中的优先级是否大于所述本地优先级;若所述组播报文中包含的优先级大于所述本地优先级,则基于所述组播报文中包含的优先级对所述本地优先级进行更新,以使得更新后的本地优先级为提取到的各所述组播报文中的优先级的最大值;将自身的优先级与更新后的本地优先级进行比对。进一步地,当所述第一服务器为处于备用状态的备用服务器时,在比对结果满足状态切换条件时进行状态切换的步骤,包括:当比对结果为自身的优先级大于提取到的各所述第二服务器的优先级时,判定所述比对结果满足状态切换条件以从当前备用状态切换为主服务状态,并获取虚拟IP以继续为客户端提供服务。进一步地,在从当前备用状态切换为主服务状态后,所述状态切换方法还包括:检测预设应用是否处于运行状态或预设应用的运行状态是否正常,若所述预设应用未处于运行状态或运行状态异常,则重启所述预设应用以确保该预设应用的运行状态正常。进一步地,所述方法还包括:在启动或重启时,读取初始配置文件;根据所述初始配置文件进行状态初始化以进入备用状态,并在处于备用状态时执行接收多个所述第二服务器发送的组播报文的步骤。进一步地,当所述第一服务器为处于主服务状态的主服务器时,所述在比对结果满足状态切换条件时进行状态切换的步骤,包括:当比对结果为自身的优先级小于提取到的所述第二服务器中的优先级时,则从当前主服务状态切换为备用状态,并删除虚拟IP以停止为客户端提供服务。进一步地,在接收各所述第二服务器发送的组播报文的同时,所述状态切换方法还包括:按照预设时间间隔向各所述第二服务器发送组播报文。另一方面,本专利技术较佳实施例提供一种状态切换装置,应用于第一服务器,该第一服务器能够与多个第二服务器之间能够互相通信,所述状态切换装置包括:报文接收模块,用于接收各所述第二服务器发送的组播报文;信息提取模块,用于针对每个组播报文,从所述组播报文中提取发送该组播报文的第二服务器的优先级;状态切换模块,用于将自身的优先级与所述组播报文中的优先级进行比对,并在比对结果满足状态切换条件时进行状态切换。进一步地,当所述第一服务器为处于备用状态的备用服务器时,所述状态切换模块包括:第一切换单元,用于在比对结果为自身的优先级大于各所述第二服务器的优先级时,判定所述比对结果满足状态切换条件以从当前备用状态切换为主服务状态,并获取虚拟IP以继续为客户端提供服务。进一步地,当所述第一服务器为处于主服务状态的主服务器时,所述状态切换模块还包括:第二切换单元,用于在比对结果为自身的优先级小于所述第二服务器中的优先级时,则从当前主服务状态切换为备用状态,并删除虚拟IP以停止为客户端提供服务。与现有技术相比,本专利技术实施例提供一种状态切换方法和装置,其中,本专利技术基于组播同步的方式进行服务器状态检测和信息同步,进而实现服务器的工作状态切换,如备用服务器在主服务器出现故障或宕机时的切换为主服务状态等,能够大幅缩减服务器进行状态切换时的切换时间,满足超高时间精度的服务或者业务的切换需求,提高了冗余备份系统运行过程中的可靠性和稳定性。另外,本专利技术还在服务器由备用状态切换为主服务状态后进行业务检测,能够有效避免由于状态切换导致的业务运行终止或异常的现象发生,有效确保了业务运行的可靠性,提高用户体验。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为现有的冗余备份系统与客户端之间的数据交互场景示意图。图2为本专利技术实施例给出的冗余备份系统的方框结构示意图。图3为图2中所示的第一服务器的方框结构示意图。图4为本专利技术实施例提供的状态切换方法的流程示意图。图5为图3中所示的步骤S13的子流程示意图。图6为本专利技术实施例提供的状态切换装置的方框结构示意图。图标:10-第一服务器;100-状态切换装置;110-报文接收模块;120-信息提取模块;130-状态切换模块;200-存储器;300-存储控制器;400-处理器;20-第二服务器;30-冗余备份系统。具体实施方式如图1所示,为现有技术中的冗余备份系统和客户端(Client)之间的数据交互场景示意图,该冗余备份系统可包括主服务器(Master)和备用服务器(Backup),且该主服务器和备用服务器中运行有基于vrrp协议实现的keepalived应用,以用于避免单点故障。在图1中所示的数据交互场景中,对于客户端而言,可通过虚拟IP(VIP,VirtualIP)地址登录冗余备份系统进行服务访问或者业务使用,且只要冗余备份系统中只要有一个服务器能够正常运行就可保证相应服务或业务的正常运行。而对于冗余备份系统而言,该冗余备份系统对外表现为一个VIP,即在冗余备份系统的实际运行过程中,处于主服务状态的主服务器拥有该VIP以对所述客户端提供服务。实际工作时,在现有的冗余备份系统中,处于主服务状态的主服务器会周期性发送vrrp通告给处于备用状态的备用服务器,一旦处于备用状态的服务器收不到vrrp通告,则需要备用服务器切换为主服务状态并接管VIP,以继续为客户端提供服务,从而保证对外服务的正常运行。具体地,下面对现有技术中冗余备份系统中的主服务器和备用服务器的工作过程进行简要说明。(1)主服务器a.主服务器中设置有用于进行定时通告的定时器;b.主服务器基于vrrp虚拟MAC(MediaAccessControlAddress,局域网地址)响应路由器IP地址的ARP(AddressResolutionProtocol,地址解析协议)请求,以及转发目的MAC是vrrp虚拟MA本文档来自技高网...

【技术保护点】
1.一种状态切换方法,其特征在于,应用于第一服务器,该第一服务器能够与多个第二服务器之间互相通信,所述状态切换方法包括:接收各所述第二服务器发送的组播报文;针对每个组播报文,从所述组播报文中提取发送该组播报文的第二服务器的优先级;分别将自身的优先级与提取到的各所述组播报文中的优先级进行比对,并在比对结果满足状态切换条件时进行状态切换。

【技术特征摘要】
1.一种状态切换方法,其特征在于,应用于第一服务器,该第一服务器能够与多个第二服务器之间互相通信,所述状态切换方法包括:接收各所述第二服务器发送的组播报文;针对每个组播报文,从所述组播报文中提取发送该组播报文的第二服务器的优先级;分别将自身的优先级与提取到的各所述组播报文中的优先级进行比对,并在比对结果满足状态切换条件时进行状态切换。2.根据权利要求1所述的状态切换方法,其特征在于,所述第一服务器中预设有用于与提取到的第二服务器的优先级进行一一比对的本地优先级;所述分别将自身的优先级与提取到的各所述组播报文中的优先级进行比对的步骤,包括:分别判断提取到的各所述组播报文中的优先级是否大于所述本地优先级;若所述组播报文中包含的优先级大于所述本地优先级,则基于所述组播报文中包含的优先级对所述本地优先级进行更新,以使得更新后的本地优先级为提取到的各所述组播报文中的优先级的最大值;将自身的优先级与更新后的本地优先级进行比对。3.根据权利要求1所述的状态切换方法,其特征在于,当所述第一服务器为处于备用状态的备用服务器时,所述在比对结果满足状态切换条件时进行状态切换步骤,包括:当比对结果为自身的优先级大于提取到的各所述第二服务器的优先级时,判定所述比对结果满足状态切换条件并从当前备用状态切换为主服务状态,同时获取虚拟IP以继续为客户端提供服务。4.根据权利要求1所述的状态切换方法,其特征在于,在从当前备用状态切换为主服务状态后,所述状态切换方法还包括:检测预设应用是否处于运行状态或预设应用的运行状态是否正常,若所述预设应用未处于运行状态或运行状态异常,则重启所述预设应用以确保该预设应用的运行状态正常。5.根据权利要求3所述的状态切换方法,其特征在于,所述方法还包括:在启动或重启时,读取初始配置文件;根据所述初始配置文件进行状态初始化以进入备用状态,并...

【专利技术属性】
技术研发人员:李松
申请(专利权)人:成都中航信虹科技股份有限公司
类型:发明
国别省市:四川,51

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

1