本申请涉及分布式领域,具体涉及一种分布式服务路由方法及装置。
背景技术:
1、在分布式系统中,按照业务领域维度拆分多个应用,一笔交易需在多个应用节点中处理完成,各应用根据数据量以一定的规则进行分库。
2、例如,某银行系统分为客户信息、借记卡、信用卡等应用。其中客户信息应用为客户生成一个客户编号,并且按客户编号取哈希值,按哈希值分128段,将每段范围内的客户数据存储在一个数据库中,即按客户编号分库。而借记卡应用按照借记卡号进行分库,信用卡按照信用卡号进行分库。
3、在某一设备资源域发生故障时,由于该资源域内可能存在多个应用的客户,每个应用的客户范围也不尽相同,因此受影响的客户比例可能远大于故障资源域的比例,对实际业务造成的故障范围扩大。
技术实现思路
1、针对现有技术中的问题,本申请提供一种分布式服务路由方法及装置,能够有效控制单元资源域故障影响范围,保障系统安全性、稳定性。
2、为了解决上述问题中的至少一个,本申请提供以下技术方案:
3、第一方面,本申请提供一种分布式服务路由方法,包括:
4、接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元,其中,所述存储分区单元包括用于接收分布式服务调用请求的接入单元、用于存储执行业务处理操作必需参数的公共单元以及执行业务处理操作的应用服务节点所在的服务分区单元;
5、将所述分布式服务调用请求转发至所述存储分区单元中的服务分区单元,以使所述服务分区单元中的应用服务节点根据所述分布式服务调用请求从对应的所述公共单元中获取必需参数以执行业务处理操作。
6、进一步地,在所述接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元之后,包括:
7、对所述存储分区单元中的各节点进行探活检查;
8、若所述探活检查结果为不通过,则将该节点的流量引入至对应的互备单元。
9、进一步地,在所述接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元之后,还包括:
10、确定所述存储分区单元的故障节点比例及范围;
11、若所述故障节点比例及范围超过预设阈值,则将发生故障的节点流量引入至备用单元。
12、进一步地,所述根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元,包括:
13、预先建立客户编号与各存储分区单元的映射关系,其中,不同应用将同一客户编号对应的必需参数部署在同一公共单元中;
14、根据所述映射关系和所述分布式服务调用请求中的客户编号确定对应公共单元中的必需参数。
15、进一步地,所述对所述存储分区单元中的各节点进行探活检查,包括:
16、根据所述存储分区单元中的各节点的ip地址和端口信息,向对应的被探测节点发送探测报文;
17、若接收到所述被探测节点返回的携带有所述被探测节点的业务范围的响应信息,则判定探活检查结果为通过。
18、进一步地,所述确定所述存储分区单元的故障节点比例及范围,包括:
19、确定所述存储分区单元探活检查结果为不通过的节点为故障节点;
20、对设定时间周期内所述故障节点的所占节点数量比例和故障节点分布范围进行统计。
21、第二方面,本申请提供一种分布式服务路由装置,包括:
22、分区确定模块,用于接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元,其中,所述存储分区单元包括用于接收分布式服务调用请求的接入单元、用于存储执行业务处理操作必需参数的公共单元以及执行业务处理操作的应用服务节点所在的服务分区单元;
23、业务执行模块,用于将所述分布式服务调用请求转发至所述存储分区单元中的服务分区单元,以使所述服务分区单元中的应用服务节点根据所述分布式服务调用请求从对应的所述公共单元中获取必需参数以执行业务处理操作。
24、进一步地,所述分区确定模块包括:
25、探活检查单元,用于对所述存储分区单元中的各节点进行探活检查;
26、互备切换单元,用于若所述探活检查结果为不通过,则将该节点的流量引入至对应的互备单元。
27、进一步地,所述分区确定模块包括:
28、故障确定单元,用于确定所述存储分区单元的故障节点比例及范围;
29、备用切换单元,用于若所述故障节点比例及范围超过预设阈值,则将发生故障的节点流量引入至备用单元。
30、进一步地,所述分区确定模块包括:
31、映射关系建立单元,用于预先建立客户编号与各存储分区单元的映射关系,其中,不同应用将同一客户编号对应的必需参数部署在同一公共单元中;
32、公共参数确定单元,用于根据所述映射关系和所述分布式服务调用请求中的客户编号确定对应公共单元中的必需参数。
33、第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的分布式服务路由方法的步骤。
34、第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的分布式服务路由方法的步骤。
35、第五方面,本申请提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现所述的分布式服务路由方法的步骤。
36、由上述技术方案可知,本申请提供一种分布式服务路由方法及装置,通过接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元,其中,所述存储分区单元包括用于接收分布式服务调用请求的接入单元、用于存储执行业务处理操作必需参数的公共单元以及执行业务处理操作的应用服务节点所在的服务分区单元;将所述分布式服务调用请求转发至所述存储分区单元中的服务分区单元,以使所述服务分区单元中的应用服务节点根据所述分布式服务调用请求从对应的所述公共单元中获取必需参数以执行业务处理操作,由此能够有效控制单元资源域故障影响范围,保障系统安全性、稳定性。
1.一种分布式服务路由方法,其特征在于,所述方法包括:
2.根据权利要求1所述的分布式服务路由方法,其特征在于,在所述接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元之后,包括:
3.根据权利要求1所述的分布式服务路由方法,其特征在于,在所述接收分布式服务调用请求,并根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元之后,还包括:
4.根据权利要求1所述的分布式服务路由方法,其特征在于,所述根据所述分布式服务调用请求中的客户编号确定对应的存储分区单元,包括:
5.根据权利要求2所述的分布式服务路由方法,其特征在于,所述对所述存储分区单元中的各节点进行探活检查,包括:
6.根据权利要求3所述的分布式服务路由方法,其特征在于,所述确定所述存储分区单元的故障节点比例及范围,包括:
7.一种分布式服务路由装置,其特征在于,包括:
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6任一项所述的分布式服务路由方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6任一项所述的分布式服务路由方法的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至6任一项所述的分布式服务路由方法的步骤。