【技术实现步骤摘要】
分布式系统中的异常处理方法、系统和装置
本专利技术涉及分布式系统
,具体而言,涉及一种分布式系统中的异常处理方法、系统和装置。
技术介绍
分布式系统是建立在网络之上的软件系统,用以管理网络资源,具体的,分布式系统可以包含多个数据库分布节点,分布式系统以全局的方式管理网络资源,实现网络资源在各个数据库分布节点之间的分配。分布式系统中通常都有中心节点、服务节点、客户端节点这三类数据库分布节点,中心节点会保存元数据,负责负载均衡和调度,把服务分区或分片下发给各个服务节点执行;服务节点根据中心节点下发的计划,对不同分片提供服务;客户端节点会请求对应服务节点完成读写。通常来说服务节点和中心节点之间有心跳通信,一段时间内中心节点收不到某台服务节点汇报的心跳信息时,中心节点会认为该服务节点异常,需要重新调度。中心节点由一组中心节点提供服务,通常情况下中心节点异常时,中心节点会重新选举,选出一个新的中心节点对外提供服务。对于服务节点异常的场景,实际应用中存在一种情况:服务节点和中心节点的心跳是正常的,但对外服务异常的情况。相关技术中在遇到客户端节点大量访问报错,该系统又不能自动恢复的时候,只能通过监控发现,报警之后人为干预。针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种分布式系统中的异常处理方法、系统和装置,以至少解决由于在服务节点和中心节点的心跳是正常的但对外服务异常的情况下,相关技术中只能通过监控发现,报警之后人为干预,造成对服务节点和中心 ...
【技术保护点】
1.一种分布式系统中的异常处理方法,所述分布式系统包括客户端、为所述客户端提供服务的多个服务节点以及管理所述服务节点的中心节点,所述方法包括:/n采集所述客户端访问第一服务节点的访问信息,所述访问第一服务节点的访问信息中至少包括:所述客户端对所述第一服务节点的访问次数和异常访问次数;/n根据所述访问第一服务节点的访问信息,确定所述第一服务节点是否出现异常;/n在确定所述第一服务节点出现异常的情况下,向所述中心节点发送异常处理请求,以便请求所述中心节点确定第二服务节点,所述第二服务节点替代所述第一服务节点来为所述客户端提供服务。/n
【技术特征摘要】
1.一种分布式系统中的异常处理方法,所述分布式系统包括客户端、为所述客户端提供服务的多个服务节点以及管理所述服务节点的中心节点,所述方法包括:
采集所述客户端访问第一服务节点的访问信息,所述访问第一服务节点的访问信息中至少包括:所述客户端对所述第一服务节点的访问次数和异常访问次数;
根据所述访问第一服务节点的访问信息,确定所述第一服务节点是否出现异常;
在确定所述第一服务节点出现异常的情况下,向所述中心节点发送异常处理请求,以便请求所述中心节点确定第二服务节点,所述第二服务节点替代所述第一服务节点来为所述客户端提供服务。
2.根据权利要求1所述的方法,其中,根据所述访问第一服务节点的访问信息,确定所述第一服务节点是否出现异常的步骤包括:
确定访问所述第一服务节点的所有客户端的数量;
确定访问所述第一服务节点出现异常的客户端的数量;
根据访问所述第一服务节点出现异常的客户端的数量与访问所述第一服务节点的所有客户端的数量计算异常客户端率;
至少根据所述异常客户端率来确定所述第一服务节点是否出现异常。
3.根据权利要求2所述的方法,其中,至少根据所述异常客户端率来确定所述第一服务节点是否出现异常的步骤包括:若所述异常客户端率大于第一预设阈值,则确定所述第一服务节点出现异常。
4.根据权利要求2所述的方法,其中,在确定访问所述第一服务节点出现异常的客户端的数量之前,所述方法还包括:
确定访问所述第一服务节点出现异常的客户端,其中,若所述客户端对所述第一服务节点的异常访问次数与所述客户端对所述第一服务节点的访问次数之比超过第二预设阈值,则确定所述客户端访问所述第一服务节点出现异常。
5.根据权利要求2所述的方法,其中,至少根据所述异常客户端率来确定所述第一服务节点是否出现异常的步骤包括:
在所述异常客户端率大于第三预设阈值时,确定访问所述第一服务节点存在异常访问的客户端的数量;
若访问所述第一服务节点存在异常访问的客户端的数量与访问所述第一服务节点的所有客户端的数量之比大于第四预设阈值时,确定所述第一服务节点出现异常。
6.根据权利要求1所述的方法,其中,根据所述访问第一服务节点的访问信息,确定所述第一服务节点是否出现异常的步骤包括:
确定所述客户端对所述第一服务节点的总访问次数;
确定所述客户端对所述第一服务节点的总异常访问次数;
若所述总异常访问次数与所述总访问次数之比超过第五预设阈值,则确定所述第一服务节点出现异常。
7.根据权利要求1所述的方法,其中,所述方法还包括:
采集所述客户端访问第一中心节点的访问信息,所述第一中心节点管理所述服务节点,所述访问第一中心节点的访问信息中至少包括:所述客户端对所述第一中心节点的访问次数和异常访问次数;
根据所述访问第一中心节点的访问信息,确定所述第一中心节点是否出现异常;
在确定所述第一中心节点出现异常的情况下,向所述中心节点发送异常处理请求,以便请求所述中心节点确定第二中心节点,所述第二中心节点替代所述第一中心节点来管理所述服务节点。
8.一种分布式系统,包括:
至少一个客户端,所述客户端用于将其访问服务节点和/或中心节点的访问信息发送至监控节点;
至少一个服务节点,所述服务节点用于为客户端提供服务;
至少一个中心节点,所述中心节点用于管理所述服务节点;
监控节点,用于执行权利要求1至7中任意一项所述的分布式系统中的异常处理方法。
9.根据权利要求8所述的系统,其中,所述系统还包括:
所述服务节点用于定期发送心跳消息至所述中心节点;
所述中心节点用于根据所述心跳消息确定所述服务节点是否异常。
10.根据权利要求8所述的系统,其中,所述系统还包括:
第一中心节点用于接收来自所述第一中心节点以外的中心节点的测试消息,并返回响应;
所述第一中心节点以外的中心节点用于定期发送测试消息至所述第一中心节点,还用于根据所述第一中心节点的响应确定所述第一中心节点是否出现异常。
11.根据权利要求8所述的系统,其中,所述系统还包括:
所述监控节点还用于在确定第一服务节点或第一中心节点出现异常的情况下,向所述中心节点发送异常处理请求;
所...
【专利技术属性】
技术研发人员:赵立芳,徐恩胜,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。