CN109586951A - 实施故障转移的方法、装置、电子设备及可读存储介质 - Google Patents
实施故障转移的方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN109586951A CN109586951A CN201811320852.3A CN201811320852A CN109586951A CN 109586951 A CN109586951 A CN 109586951A CN 201811320852 A CN201811320852 A CN 201811320852A CN 109586951 A CN109586951 A CN 109586951A
- Authority
- CN
- China
- Prior art keywords
- service node
- weighted value
- called
- failure
- zero
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Hardware Redundancy (AREA)
Abstract
本公开实施例提供了一种实施故障转移的方法、装置、电子设备及可读存储介质。所述方法包括:确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;对所述多个服务节点中权重值为零的服务节点实施故障转移。无需对时间窗口的长度与QPS进行协调直到两者适配,而是根据服务节点的权重值实施failover,灵活性较高。并且,由于服务节点的权重值随该服务节点被调用失败而减少,相当于实时降低了该服务节点的调用概率,进而提升了后续调用其他服务节点的成功率。
Description
技术领域
本公开实施例涉及计算机技术领域,尤其涉及一种实施故障转移的方法、装置、电子设备及可读存储介质。
背景技术
相关技术中,为满足服务的高可用性,如果一个服务节点在预设长度的时间窗口内被调用失败的次数累计达到预设次数,则对该服务节点实施failover(故障转移),如此,该服务节点不再参与对外提供服务,直到该服务节点恢复正常为止。
然而,上述实施failover的过程受到两个参数的影响:时间窗口的长度以及QPS(Query Per Second,每秒请求数)。只有在时间窗口的长度与QPS适配的情况下,才能迅速定位需要实施failover的服务节点并对其实施failover。可见,相关技术中的实施failover的方法有待改进。
发明内容
本公开实施例提供一种实施故障转移的方法、装置、电子设备及可读存储介质,以优化相关技术中实施failover的方法。
本公开实施例第一方面提供了一种实施故障转移的方法,所述方法包括:
确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;
对所述多个服务节点中权重值为零的服务节点实施故障转移。
在一种可选的实施方式中,所述方法还包括:
对所述多个服务节点中权重值非零的服务节点进行调用。
在一种可选的实施方式中,所述方法还包括:
确定对被调用的服务节点是否调用成功;
在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
在一种可选的实施方式中,所述方法还包括:
确定对被调用的服务节点是否调用成功;
在对被调用的服务节点调用成功的情况下,将所述被调用的服务节点的权重值更新为min(wn,wn'+wn*rs);
在对被调用的服务节点调用失败的情况下,将所述被调用的服务节点的权重值更新为max(0,wn'-wn*rf);
其中,wn为所述被调用的服务节点的初始权重值,wn'为在本次调用之前所述被调用的服务节点的权重值,rs为预先设置的成功比率,rf为预先设置的失败比率。
在一种可选的实施方式中,所述方法还包括:
检验所述多个服务节点中权重值为零的服务节点是否恢复正常;
将所述多个服务节点中权重值为零且恢复正常的服务节点的权重值更新为wn*rr,其中,wn为所述权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
本公开实施例第二方面提供了一种实施故障转移的装置,所述装置包括:
第一确定模块,用于确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;
实施模块,用于对所述多个服务节点中权重值为零的服务节点实施故障转移。
在一种可选的实施方式中,所述装置还包括:
调用模块,用于对所述多个服务节点中权重值非零的服务节点进行调用。
在一种可选的实施方式中,所述装置还包括:
第二确定模块,用于确定对被调用的服务节点是否调用成功;
增加模块,用于在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
减少模块,用于在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
在一种可选的实施方式中,所述装置还包括:
第三确定模块,用于确定对被调用的服务节点是否调用成功;
第一更新模块,用于在对被调用的服务节点调用成功的情况下,将所述被调用的服务节点的权重值更新为min(wn,wn'+wn*rs);
第二更新模块,用于在对被调用的服务节点调用失败的情况下,将所述被调用的服务节点的权重值更新为max(0,wn'-wn*rf);
其中,wn为所述被调用的服务节点的初始权重值,wn'为在本次调用之前所述被调用的服务节点的权重值,rs为预先设置的成功比率,rf为预先设置的失败比率。
在一种可选的实施方式中,所述装置还包括:
检验模块,用于检验所述多个服务节点中权重值为零的服务节点是否恢复正常;
第三更新模块,用于将所述多个服务节点中权重值为零且恢复正常的服务节点的权重值更新为wn*rr,其中,wn为所述权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
本公开实施例第三方面提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请第一方面所述的方法中的步骤。
本公开实施例第四方面提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现本申请第一方面所述的方法的步骤。
采用上述技术方案,无需对时间窗口的长度与QPS进行协调直到两者适配,而是根据服务节点的权重值实施failover,灵活性较高。并且,由于服务节点的权重值随该服务节点被调用失败而减少,相当于实时降低了该服务节点的调用概率,进而提升了后续调用其他服务节点的成功率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提出的实施故障转移的方法的流程图;
图2是本申请一实施例提出的调用服务节点的方法的流程图;
图3是本申请另一实施例提出的调用服务节点的方法的流程图;
图4是本申请另一实施例提出的调用服务节点的方法的流程图;
图5是本申请另一实施例提出的调用服务节点的方法的流程图;
图6是本申请一实施例提供的实施故障转移的装置的示意图;
图7是本申请一实施例提供的电子设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
不同于相关技术中基于时间窗口实施failover的技术方案,本申请一实施例提供了一种新的实施failover的技术方案,即基于服务节点的权重值实施failover的技术方案。
参考图1,图1是本申请一实施例提出的实施故障转移的方法的流程图。如图1所示,该方法包括以下步骤:
步骤S11:确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少。
步骤S12:对所述多个服务节点中权重值为零的服务节点实施故障转移。
在本实施例中,多个服务节点中的每个服务节点具有权重值,一个服务节点的权重值表征该服务节点的调用概率。
具体地,多个服务节点中的每个服务节点具有初始权重值,即在初次调用之前,对多个服务节点各自的权重值分别进行初始化,设置每个服务节点各自的初始权重值。在初次调用之前,默认每个服务节点均是正常的,对每个服务节点均无需实施failover,所以可以将每个服务节点的初始权重值均设置为非零的数值。可选地,在初次调用之前,默认每个服务节点被调用的概率是相同的,因而可以将每个服务节点的初始权重值设置为同一数值。
一个服务节点的权重值随着该服务节点被调用失败而减少。在初次调用开始之后,随着一个服务节点被调用失败,该服务节点的权重值在其初始权重值的基础上减少。相应地,该服务节点的调用概率也减小。如果一个服务节点的权重值减少为零,则对该服务节点实施故障转移。
采用上述技术方案,无需对时间窗口的长度与QPS进行协调直到两者适配,而是根据服务节点的权重值实施failover,灵活性较高。并且,由于服务节点的权重值随该服务节点被调用失败而减少,相当于实时降低了该服务节点的调用概率,进而提升了后续调用其他服务节点的成功率。
参考图2,图2是本申请一实施例提出的调用服务节点的方法的流程图。如图2所示,该方法除包括步骤S11-步骤S12外,还包括以下步骤:
步骤S13:对所述多个服务节点中权重值非零的服务节点进行调用。
在每次调用过程中,根据多个服务节点各自的权重值,从中选择权重值非零的服务节点作为预备调用的服务节点,或者,从多个服务节点中选择权重值非零且权重值最大的服务节点作为预备调用的服务节点。然后对预备调用的服务节点进行调用。
采用上述技术方案,对权重值非零的服务节点进行调用,避免对权重值为零的服务节点进行调用,相当于对权重值为零的服务节点实施failover。一方面提供了一种新的实施failover的方法,灵活性较高,无需对时间窗口的长度与QPS进行协调直到两者适配;另一方面,对权重值非零的服务节点进行调用,增加了调用成功率。
参考图3,图3是本申请另一实施例提出的调用服务节点的方法的流程图。如图3所示,该方法除包括步骤S11-步骤S13外,还包括以下步骤:
步骤S14:确定对被调用的服务节点是否调用成功;
步骤S15a:在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
步骤S15b:在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
本申请实施例中,在对多个服务节点中的一个服务节点调用后,根据对该被调用节点是否调用成功,更新该被调用的服务节点的权重值。具体地,在对该被调用节点调用成功的情况下,增加该被调用节点的权重值;在对该被调用节点调用失败的情况下,减少该被调用节点的权重值。
如果一个服务节点被多次调用失败,则该服务节点的权重值逐渐减少至零,此时,将不会调用该服务节点,相当于对该服务节点实施failover。如果一个服务节点被多次调用成功,则该服务节点的权重值逐渐增加,相当于该服务节点的调用概率增大,因而,调用该服务节点的可能性较大,提高了服务的可用性。
参考图4,图4是本申请另一实施例提出的调用服务节点的方法的流程图。如图4所示,该方法除包括步骤S11-步骤S13外,还包括以下步骤:
步骤S14’:确定对被调用的服务节点是否调用成功;
步骤S15a’:在对被调用的服务节点调用成功的情况下,将所述被调用的服务节点的权重值更新为min(wn,wn'+wn*rs);
步骤S15b’:在对被调用的服务节点调用失败的情况下,将所述被调用的服务节点的权重值更新为max(0,wn'-wn*rf)。
其中,wn为所述被调用的服务节点的初始权重值,wn'为在本次调用之前所述被调用的服务节点的权重值,rs为预先设置的成功比率,rf为预先设置的失败比率。
在初次调用中,根据多个服务节点各自的初始权重值,从中选择一个服务节点进行调用。在初次调用后,根据对被调用的服务节点是否调用成功,更新被调用的服务节点的权重值。接着,根据被调用的服务节点的更新后的权重值以及其他服务节点各自的权重值,对其中一个权重值非零的服务节点进行调用。在第二次调用之后,与初次调用的过程相同,返回到步骤:根据对被调用节点是否调用成功,更新被调用的服务节点的权重值。以及步骤:根据被调用的服务节点的更新后的权重值以及其他服务节点各自的权重值,对其中一个权重值非零的服务节点进行调用。
其中,对被调用的服务节点的权重值进行更新,分为两种情况:
1)在对被调用的服务节点调用成功的情况下,将该被调用的服务节点的权重值更新为不大于其初始权重值的数值,即min(wn,wn'+wn*rs)。其中,wn为该被调用的服务节点的初始权重值,wn'为在本次调用之前该被调用的服务节点的权重值,rs为预先设置的成功比率。
其中,wn*rs表示该服务节点每次被调用成功之后,其权重值的增加量。也就是说,一个服务节点每次被调用成功,其权重值在调用之前的权重值的基础上增加wn*rs,且最多增加至初始权重值wn为止。
2)在对被调用的服务节点调用失败的情况下,将该被调用的服务节点的权重值更新为大于等于零且小于其被调用之前的权重值的数值,即max(0,wn'-wn*r)f。其中,wn为该被调用的服务节点的初始权重值,wn'为在本次调用之前该被调用的服务节点的权重值,rs为预先设置的成功比率。
其中,wn*rf表示该服务节点每次被调用失败之后,其权重值的减少量。也就是说,一个服务节点每次被调用失败,其权重值在调用之前的权重值的基础上减少wn*rf,且最多减少至零为止。
参考图5,图5是本申请另一实施例提出的调用服务节点的方法的流程图。如图5所示,该方法除包括步骤S11-步骤S13、步骤S14-步骤S15b(图5未示出)或者步骤S14’-步骤S15b’(图5示出)外,还包括以下步骤:
步骤S16:检验所述多个服务节点中权重值为零的服务节点是否恢复正常;
步骤S17:将所述多个服务节点中权重值为零且恢复正常的服务节点的权重值更新为wn*rr,其中,wn为所述权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
在本实施例中,除对权重值减少为零的服务节点实施failover外,还可以检验权重值减少为零的服务节点是否恢复正常。在具体实施过程中,可以周期性检验,例如:以t为周期,每隔周期t,检验权重减少为零的服务节点是否恢复正常。或者,可以在有服务节点的权重值减少为零时,检验权重减少为零的服务节点是否恢复正常。
其中,检验权重值减少为零的服务节点是否恢复正常,可以通过恢复检测函数f(a)实现,具体地,将权重值减少为零的服务节点输入恢复检测函数f(a),如果恢复检测函数f(a)返回的结果是真,则说明该服务节点恢复正常;如果恢复检测函数f(a)返回的结果是假,则说明该服务节点未恢复正常。
对于权重值为零且恢复正常的服务节点,可以允许其重新参与对外提供服务,即对其实施failback(故障复原),因而将其权重值更新为wn*rr,其中,wn为该权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
其中,wn*rr表示一个被实施failover的服务节点恢复正常后的权重值。也就是说,一个被实施failover的服务节点恢复正常后,其权重值为wn*rr。即,当一个被实施failover的服务节点恢复正常时,该服务节点的权重值由零恢复为wn*rr,从而有被调用的概率。
采用上述技术方案,当被实施failover的服务节点恢复正常时,该服务节点的权重值会被设置为一个非零的数值,从而继续重新参与对外提供服务。并且,随着该服务节点被调用成功,其权重值逐渐增加,相应地,该服务节点被调用的概率也逐渐增大。
下面以一个示例说明本申请上述实施例提供的技术方案。
示例地,假设多个服务节点分别是a1、a2…an,在初次调用之前,设置a1、a2…an各自的初始权重值分别是w1、w2…wn。由于多个服务节点中每个服务节点的权重值,随着该服务节点被调用成功或调用失败而变化,所以在每次调用过程中,确定a1、a2…an各自的权重值分别为w1'、w2'…wn'。
在一次调用过程中,根据a1、a2…an各自的权重值w1’、w2’…wn’,确定该次预备调用的服务节点是an,然后对an进行调用。如果对an调用成功,则将an的权重值更新为min(wn,wn'+wn*rs);如果对an调用失败,则将an的权重值更新为max(0,wn'-wn*rf)。接着根据其他服务节点各自的权重值以及an的更新后的权重值,继续确定下一次预备调用的服务节点,并对其进行调用。
随着调用过程的持续,以周期t检查w1'、w2'…wn'中为0的服务节点,将w1'、w2'…wn'中为0的服务节点输入恢复检测函数f(a),如果恢复检测函数f(a)返回的结果是真,则说明该服务节点恢复正常,则设置该服务节点权重为wn*rr。
基于同一发明构思,本申请一实施例提供一种实施故障转移的装置。参考图6,图6是本申请一实施例提供的实施故障转移的装置的示意图。如图6所示,该装置包括:
第一确定模块601,用于确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;
实施模块602,用于对所述多个服务节点中权重值为零的服务节点实施故障转移。
在一种可选的实施方式中,所述装置还包括:
调用模块,用于对所述多个服务节点中权重值非零的服务节点进行调用。
在一种可选的实施方式中,所述装置还包括:
第二确定模块,用于确定对被调用的服务节点是否调用成功;
增加模块,用于在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
减少模块,用于在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
在一种可选的实施方式中,所述装置还包括:
第三确定模块,用于确定对被调用的服务节点是否调用成功;
第一更新模块,用于在对被调用的服务节点调用成功的情况下,将所述被调用的服务节点的权重值更新为min(wn,wn'+wn*rs);
第二更新模块,用于在对被调用的服务节点调用失败的情况下,将所述被调用的服务节点的权重值更新为max(0,wn'-wn*rf);
其中,wn为所述被调用的服务节点的初始权重值,wn'为在本次调用之前所述被调用的服务节点的权重值,rs为预先设置的成功比率,rf为预先设置的失败比率。
在一种可选的实施方式中,所述装置还包括:
检验模块,用于检验所述多个服务节点中权重值为零的服务节点是否恢复正常;
第三更新模块,用于将所述多个服务节点中权重值为零且恢复正常的服务节点的权重值更新为wn*rr,其中,wn为所述权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
基于同一发明构思,本申请另一实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请上述任一实施例所述的方法中的步骤。
基于同一发明构思,本申请另一实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现本申请上述任一实施例所述的方法中的步骤。
图7是本申请一实施例提供的电子设备700的示意图。例如,电子设备700可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图7,电子设备700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)接口712,传感器组件714,以及通信组件716。
处理组件702通常控制装置700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述实施故障转移的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理部件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在电子设备700的操作。这些数据的示例包括用于在电子设备700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为电子设备700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为电子设备700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述电子设备700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当电子设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当电子设备700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为电子设备700提供各个方面的状态评估。例如,传感器组件714可以检测到电子设备700的打开/关闭状态,组件的相对定位,例如所述组件为电子设备700的显示器和小键盘,传感器组件714还可以检测电子设备700或电子设备700一个组件的位置改变,用户与电子设备700接触的存在或不存在,电子设备700方位或加速/减速和电子设备700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于电子设备700和其他设备之间有线或无线方式的通信。电子设备700可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行实施故障转移的方法,具体地,该方法包括:
确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;
对所述多个服务节点中权重值为零的服务节点实施故障转移。
在一种可选的实施方式中,所述方法还包括:
对所述多个服务节点中权重值非零的服务节点进行调用。
在一种可选的实施方式中,所述方法还包括:
确定对被调用的服务节点是否调用成功;
在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
在一种可选的实施方式中,所述方法还包括:
确定对被调用的服务节点是否调用成功;
在对被调用的服务节点调用成功的情况下,将所述被调用的服务节点的权重值更新为min(wn,wn'+wn*rs);
在对被调用的服务节点调用失败的情况下,将所述被调用的服务节点的权重值更新为max(0,wn'-wn*rf);
其中,wn为所述被调用的服务节点的初始权重值,wn'为在本次调用之前所述被调用的服务节点的权重值,rs为预先设置的成功比率,rf为预先设置的失败比率。
在一种可选的实施方式中,所述方法还包括:
检验所述多个服务节点中权重值为零的服务节点是否恢复正常;
将所述多个服务节点中权重值为零且恢复正常的服务节点的权重值更新为wn*rr,其中,wn为所述权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器704,上述指令可由电子设备700的处理器720执行以完成上述实施故障转移的方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施故障转移的方法的步骤。
在此提供的实施故障转移的方法不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的实施故障转移的方法中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包括”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种实施故障转移的方法,其特征在于,所述方法包括:
确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;
对所述多个服务节点中权重值为零的服务节点实施故障转移。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述多个服务节点中权重值非零的服务节点进行调用。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
确定对被调用的服务节点是否调用成功;
在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
确定对被调用的服务节点是否调用成功;
在对被调用的服务节点调用成功的情况下,将所述被调用的服务节点的权重值更新为min(wn,wn'+wn*rs);
在对被调用的服务节点调用失败的情况下,将所述被调用的服务节点的权重值更新为max(0,wn'-wn*rf);
其中,wn为所述被调用的服务节点的初始权重值,wn'为在本次调用之前所述被调用的服务节点的权重值,rs为预先设置的成功比率,rf为预先设置的失败比率。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
检验所述多个服务节点中权重值为零的服务节点是否恢复正常;
将所述多个服务节点中权重值为零且恢复正常的服务节点的权重值更新为wn*rr,其中,wn为所述权重值为零且恢复正常的服务节点的初始权重值,rr为预先设置的恢复比率。
6.一种实施故障转移的装置,其特征在于,所述装置包括:
第一确定模块,用于确定多个服务节点各自的权重值,一个服务节点的权重值表征该服务节点的调用概率,且随着该服务节点被调用失败而减少;
实施模块,用于对所述多个服务节点中权重值为零的服务节点实施故障转移。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
调用模块,用于对所述多个服务节点中权重值非零的服务节点进行调用。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于确定对被调用的服务节点是否调用成功;
增加模块,用于在对被调用的服务节点调用成功的情况下,增加所述被调用的服务节点的权重值;
减少模块,用于在对被调用的服务节点调用失败的情况下,减少所述被调用的服务节点的权重值。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5任一所述的方法中的步骤。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行时实现如权利要求1-5任一所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811320852.3A CN109586951B (zh) | 2018-11-07 | 2018-11-07 | 实施故障转移的方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811320852.3A CN109586951B (zh) | 2018-11-07 | 2018-11-07 | 实施故障转移的方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109586951A true CN109586951A (zh) | 2019-04-05 |
CN109586951B CN109586951B (zh) | 2020-04-17 |
Family
ID=65921739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811320852.3A Active CN109586951B (zh) | 2018-11-07 | 2018-11-07 | 实施故障转移的方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109586951B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783908A (zh) * | 2020-06-10 | 2021-12-10 | 腾讯科技(上海)有限公司 | 服务调用方法、装置、设备及存储介质 |
EP4160996A4 (en) * | 2020-06-24 | 2023-11-01 | Huawei Technologies Co., Ltd. | OPERATING STATE SWITCHING METHOD AND APPARATUS, MASTER/STANDBY MANAGEMENT SYSTEM AND NETWORK SYSTEM |
JP7525668B2 (ja) | 2020-06-24 | 2024-07-30 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 動作ステータス切り替え方法、装置、アクティブ/スタンバイ管理システムおよびネットワークシステム |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493788A (zh) * | 2007-12-31 | 2009-07-29 | 英特尔公司 | 虚拟机故障转移中的安全等级实施 |
US20100153481A1 (en) * | 2008-12-16 | 2010-06-17 | Thilo-Alexander Ginkel | Failover Mechanism For Distributed Process Execution |
CN101783750A (zh) * | 2009-12-29 | 2010-07-21 | 北京航空航天大学 | 一种基于贝叶斯网络失败风险模型的Web Service测试方法 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN106716972A (zh) * | 2014-09-30 | 2017-05-24 | 微软技术许可有限责任公司 | 半自动故障转移 |
CN107341045A (zh) * | 2017-07-13 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种虚拟机调度管理方法及调度器 |
CN107465729A (zh) * | 2017-07-25 | 2017-12-12 | 北京计算机技术及应用研究所 | 基于访问次数排名的虚拟节点副本调整系统及方法 |
CN107491352A (zh) * | 2017-08-22 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种资源调度方法及装置 |
CN107566475A (zh) * | 2017-08-28 | 2018-01-09 | 北京天元创新科技有限公司 | 一种会话故障转移方法及装置 |
CN108009050A (zh) * | 2017-11-29 | 2018-05-08 | 郑州云海信息技术有限公司 | 一种存储节点故障重启后的服务可靠性测试方法及装置 |
CN108304255A (zh) * | 2017-12-29 | 2018-07-20 | 北京城市网邻信息技术有限公司 | 分布式任务调度方法及装置、电子设备及可读存储介质 |
CN108595250A (zh) * | 2018-05-02 | 2018-09-28 | 南京大学 | 一种面向IaaS云平台的资源调度效率优化方法及系统 |
CN108776617A (zh) * | 2018-06-08 | 2018-11-09 | 山东超越数控电子股份有限公司 | 一种基于访问频率和动态优先级的预取目标识别方法 |
CN109144958A (zh) * | 2018-07-02 | 2019-01-04 | 广东睿江云计算股份有限公司 | 一种联合文件系统文件访问频率元数据采集方法及装置 |
-
2018
- 2018-11-07 CN CN201811320852.3A patent/CN109586951B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101493788A (zh) * | 2007-12-31 | 2009-07-29 | 英特尔公司 | 虚拟机故障转移中的安全等级实施 |
US20100153481A1 (en) * | 2008-12-16 | 2010-06-17 | Thilo-Alexander Ginkel | Failover Mechanism For Distributed Process Execution |
CN101783750A (zh) * | 2009-12-29 | 2010-07-21 | 北京航空航天大学 | 一种基于贝叶斯网络失败风险模型的Web Service测试方法 |
CN106716972A (zh) * | 2014-09-30 | 2017-05-24 | 微软技术许可有限责任公司 | 半自动故障转移 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN107341045A (zh) * | 2017-07-13 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种虚拟机调度管理方法及调度器 |
CN107465729A (zh) * | 2017-07-25 | 2017-12-12 | 北京计算机技术及应用研究所 | 基于访问次数排名的虚拟节点副本调整系统及方法 |
CN107491352A (zh) * | 2017-08-22 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种资源调度方法及装置 |
CN107566475A (zh) * | 2017-08-28 | 2018-01-09 | 北京天元创新科技有限公司 | 一种会话故障转移方法及装置 |
CN108009050A (zh) * | 2017-11-29 | 2018-05-08 | 郑州云海信息技术有限公司 | 一种存储节点故障重启后的服务可靠性测试方法及装置 |
CN108304255A (zh) * | 2017-12-29 | 2018-07-20 | 北京城市网邻信息技术有限公司 | 分布式任务调度方法及装置、电子设备及可读存储介质 |
CN108595250A (zh) * | 2018-05-02 | 2018-09-28 | 南京大学 | 一种面向IaaS云平台的资源调度效率优化方法及系统 |
CN108776617A (zh) * | 2018-06-08 | 2018-11-09 | 山东超越数控电子股份有限公司 | 一种基于访问频率和动态优先级的预取目标识别方法 |
CN109144958A (zh) * | 2018-07-02 | 2019-01-04 | 广东睿江云计算股份有限公司 | 一种联合文件系统文件访问频率元数据采集方法及装置 |
Non-Patent Citations (1)
Title |
---|
周秀梅 等: "基于SQL Server的故障转移集群系统实现", 《赤峰学院学报(自然科学版)》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783908A (zh) * | 2020-06-10 | 2021-12-10 | 腾讯科技(上海)有限公司 | 服务调用方法、装置、设备及存储介质 |
EP4160996A4 (en) * | 2020-06-24 | 2023-11-01 | Huawei Technologies Co., Ltd. | OPERATING STATE SWITCHING METHOD AND APPARATUS, MASTER/STANDBY MANAGEMENT SYSTEM AND NETWORK SYSTEM |
JP7525668B2 (ja) | 2020-06-24 | 2024-07-30 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 動作ステータス切り替え方法、装置、アクティブ/スタンバイ管理システムおよびネットワークシステム |
Also Published As
Publication number | Publication date |
---|---|
CN109586951B (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101706359B1 (ko) | 백그라운드 애플리케이션을 제어하기 위한 방법 및 장치 | |
KR101813195B1 (ko) | 연락처 정보 추천 방법, 장치, 프로그램 및 기록매체 | |
EP2975838A1 (en) | Image shooting parameter adjustment method and device | |
EP2977902A2 (en) | Method and device for saving storage space | |
US20160029419A1 (en) | Methods and devices for connecting to wireless network | |
CN109936481A (zh) | 主从服务器切换方法、装置、电子设备及存储介质 | |
US20160050307A1 (en) | Method and device for adding application badge | |
CN109684406A (zh) | 跨机房的redis集群备份数据的方法、装置、设备及存储介质 | |
CN108702414A (zh) | 一种屏幕锁定方法及装置 | |
CN107132949B (zh) | 抗干扰方法、装置、终端及存储介质 | |
US10061497B2 (en) | Method, device and storage medium for interchanging icon positions | |
CN107147779A (zh) | 信息提示方法及装置 | |
CN110796094A (zh) | 基于图像识别的控制方法及装置、电子设备和存储介质 | |
CN109582400A (zh) | 程序调用方法及装置 | |
EP3509012A1 (en) | Fingerprint recognition method and device | |
CN109586951A (zh) | 实施故障转移的方法、装置、电子设备及可读存储介质 | |
CN112905035A (zh) | 触摸屏控制方法及装置、计算机存储介质 | |
CN109951701A (zh) | 监控故障处理方法及装置 | |
CN108446226B (zh) | 应用异常的处理方法 | |
CN109376013A (zh) | 负载均衡方法及装置 | |
CN112188034A (zh) | 一种图像处理方法、装置、终端设备及介质 | |
CN106502809B (zh) | 一种多平台应用程序适配方法、装置及终端设备 | |
US20170180968A1 (en) | Method, apparatus and computer-readable medium for cellular data monitoring | |
CN114935902A (zh) | 应用于电子设备的控制方法、装置和设备 | |
CN113407316A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |