System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及通信,特别涉及一种服务调用方法、装置、设备及存储介质。
技术介绍
1、目前,在dubbo(一种服务框架)路由规则配置文件中,指定根据企业员工数量的阈值,将请求路由到不同的服务集群上。然而,每个服务都需要进行单独配置,复杂度和维护成本极高,而且难以应对企业类型的变化,比如新增的企业类型。
2、由上可见,如何在服务调用过程中简化企业服务的配置是目前亟待解决的问题。
技术实现思路
1、有鉴于此,本专利技术的目的在于提供一种服务调用方法、装置、设备及存储介质,能够在服务调用过程中简化企业服务的配置。其具体方案如下:
2、第一方面,本申请提供了一种服务调用方法,包括:
3、利用预设aop拦截器获取企业服务请求中的目标方法,并基于所述目标方法中的参数列表确定与预设企业编号注解对应的企业编号;
4、基于所述企业编号以及预设企业服务工具确定对应的目标企业类型,并将所述目标企业类型存入目标上下文中;所述目标上下文为远程过程调用期间传递的上下文信息;
5、通过预设服务提供机制运行编写好的目标负载均衡策略,并利用所述目标负载均衡策略从所述目标上下文获取所述目标企业类型;
6、基于所述目标企业类型确定相应的目标服务调用地址,以通过所述目标服务调用地址调用相应的企业服务。
7、可选的,所述利用预设aop拦截器获取企业服务请求中的目标方法,包括:
8、利用预设aop拦截器获取企业服务请求;
10、可选的,所述基于所述目标方法中的参数列表确定与预设企业编号注解对应的企业编号,包括:
11、对所述目标方法中的参数列表进行遍历;
12、若所述参数列表中的参数对应的数据类型为数字类型且被预设企业编号注解标记,则将所述参数对应的参数值转换为整数类型,以得到企业编号;
13、若所述参数列表中的参数对应的数据类型为非数字类型且被所述预设企业编号注解标记,则将所述参数对应的注解值作为目标表达式,通过对所述目标表达式进行运行得到被所述预设企业编号注解标记的目标属性值,并将所述目标属性值对应的数据类型转换为整数类型以得到所述企业编号;
14、若所述参数列表中的参数对应的数据类型为对象类型且未被所述企业编号注解标记,则对所述参数中的各个属性进行遍历,基于遍历结果进行相应的递归操作,以得到所述企业编号。
15、可选的,所述基于所述企业编号以及预设企业服务工具确定对应的目标企业类型,并将所述目标企业类型存入目标上下文中,包括:
16、判断所述本地缓存中是否存在所述企业编号对应的目标企业类型;
17、若所述本地缓存中存在所述企业编号对应的所述目标企业类型,则从所述本地缓存中获取所述目标企业类型;
18、若所述本地缓存中不存在所述企业编号对应的所述目标企业类型,则利用所述企业编号调用相应的企业服务画像,并从所述企业服务画像中获取相应的所述目标企业类型,并将所述目标企业类型存储至所述本地缓存中,以得到更新后的本地缓存;
19、当获取到下一所述企业编号时,跳转至所述判断所述本地缓存中是否存在所述企业编号对应的目标企业类型的步骤。
20、可选的,所述通过预设服务提供机制运行编写好的目标负载均衡策略之前,还包括:
21、创建目标大企业服务地址列表、目标小企业服务地址列表以及可用服务地址列表,以得到相应的目标负载均衡策略;
22、其中,所述目标大企业服务地址列表为属于预设大企业类型的服务提供方的ip地址列表;所述目标小企业服务地址列表为属于预设小企业类型的服务提供方的ip地址列表。
23、可选的,所述基于所述目标企业类型确定相应的目标服务调用地址,包括:
24、若所述目标企业类型为空或满足预设企业类型条件,则将所述可用服务地址列表中的任一所述服务调用地址确定为目标服务调用地址;
25、若所述目标企业类型为预设大企业类型,则将所述目标大企业服务地址列表作为目标服务调用地址列表;
26、若所述目标企业类型为预设小企业类型,则将所述目标小企业服务地址列表作为所述目标服务调用地址列表;
27、基于所述目标服务调用地址列表和所述可用服务地址列表的交集确定目标服务调用地址;
28、其中,所述预设企业类型条件为企业类型与预设目标类型相一致,所述预设目标类型为除所述预设大企业类型和所述预设小企业类型以外的企业类型。
29、可选的,所述基于所述目标服务调用地址列表和所述可用服务地址列表的交集确定目标服务调用地址,包括:
30、若所述目标服务调用地址列表和所述可用服务地址列表的交集为空集,则将所述可用服务地址列表中的任一所述服务调用地址确定为目标服务调用地址;
31、若所述目标服务调用地址列表和所述可用服务地址列表的交集不是空集,则将所述交集中的任一所述服务调用地址确定为目标服务调用地址。
32、第二方面,本申请提供了一种服务调用装置,包括:
33、企业编号确定模块,用于利用预设aop拦截器获取企业服务请求中的目标方法,并基于所述目标方法中的参数列表确定与预设企业编号注解对应的企业编号;
34、目标类型确定模块,用于基于所述企业编号以及预设企业服务工具确定对应的目标企业类型,并将所述目标企业类型存入目标上下文中;所述目标上下文为远程过程调用期间传递的上下文信息;
35、负载均衡模块,用于通过预设服务提供机制运行编写好的目标负载均衡策略,并利用所述目标负载均衡策略从所述目标上下文获取所述目标企业类型;
36、服务地址调用模块,用于基于所述目标企业类型确定相应的目标服务调用地址,以通过所述目标服务调用地址调用相应的企业服务。
37、第三方面,本申请提供了一种电子设备,包括:
38、存储器,用于保存计算机程序;
39、处理器,用于执行所述计算机程序,以实现前述的服务调用方法。
40、第四方面,本申请提供了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述的服务调用方法。
41、本申请利用预设aop拦截器获取企业服务请求中的目标方法,并基于所述目标方法中的参数列表确定与预设企业编号注解对应的企业编号;基于所述企业编号以及预设企业服务工具确定对应的目标企业类型,并将所述目标企业类型存入目标上下文中;通过预设服务提供机制运行编写好的目标负载均衡策略,并利用所述目标负载均衡策略从所述目标上下文获取所述目标企业类型;基于所述目标企业类型确定相应的目标服务调用地址,以通过所述目标服务调用地址调用相应的企业服务,由上可见,本申请在利用预设aop拦截器获取到目标方法之后,基于所述目标方法中的参数列表确定与预设企业本文档来自技高网...
【技术保护点】
1.一种服务调用方法,其特征在于,包括:
2.根据权利要求1所述的服务调用方法,其特征在于,所述利用预设AOP拦截器获取企业服务请求中的目标方法,包括:
3.根据权利要求1所述的服务调用方法,其特征在于,所述基于所述目标方法中的参数列表确定与预设企业编号注解对应的企业编号,包括:
4.根据权利要求1至3任一项所述的服务调用方法,其特征在于,所述基于所述企业编号以及预设企业服务工具确定对应的目标企业类型,并将所述目标企业类型存入目标上下文中,包括:
5.根据权利要求4所述的服务调用方法,其特征在于,所述通过预设服务提供机制运行编写好的目标负载均衡策略之前,还包括:
6.根据权利要求5所述的服务调用方法,其特征在于,所述基于所述目标企业类型确定相应的目标服务调用地址,包括:
7.根据权利要求6所述的服务调用方法,其特征在于,所述基于所述目标服务调用地址列表和所述可用服务地址列表的交集确定目标服务调用地址,包括:
8.一种服务调用装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的服务调用方法。
...【技术特征摘要】
1.一种服务调用方法,其特征在于,包括:
2.根据权利要求1所述的服务调用方法,其特征在于,所述利用预设aop拦截器获取企业服务请求中的目标方法,包括:
3.根据权利要求1所述的服务调用方法,其特征在于,所述基于所述目标方法中的参数列表确定与预设企业编号注解对应的企业编号,包括:
4.根据权利要求1至3任一项所述的服务调用方法,其特征在于,所述基于所述企业编号以及预设企业服务工具确定对应的目标企业类型,并将所述目标企业类型存入目标上下文中,包括:
5.根据权利要求4所述的服务调用方法,其特征在于,所述通过预设服务提供机制运...
【专利技术属性】
技术研发人员:凌利虎,吴迪,冉荣健,孙显龙,王鋆昌,
申请(专利权)人:亿企薪福网络科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。