请求路由方法、装置、路由设备、存储介质和程序产品与流程
- 国知局
- 2024-09-05 15:01:25
本技术实施例涉及计算机,尤其涉及一种请求路由方法、装置、路由设备、存储介质和程序产品。
背景技术:
1、在单元化架构中,通常通过路由设备将服务请求路由到相应的分布式设备中。例如,路由设备可以为引流网关或流量调度器。
2、在相关技术中,可以在路由设备中预先存储请求特征与分布式设备之间的映射关系,当路由设备接收到服务请求后,可以确定服务请求的请求特征,并基于该请求特征和映射关系,将该服务请求路由至对应的分布式设备中。
3、然而,由于映射关系中的数据量较多,使得路由设备对服务请求路由时需要消耗较长的时间,导致服务请求的路由效率较低。
技术实现思路
1、本技术实施例提供一种请求路由方法、装置、路由设备、存储介质和程序产品,用于解决相关技术中由于映射关系中的数据量较多,使得路由设备对服务请求路由时需要消耗较长的时间,导致服务请求的路由效率较低的技术问题。
2、第一方面,本技术实施例提供一种请求路由方法,应用于路由设备,所述方法包括:
3、接收服务请求;
4、确定所述服务请求的目标请求特征,并基于所述目标请求特征在所述路由设备中的映射表中进行路由信息查询,所述映射表中包括的路由信息的数量小于或等于预设阈值;
5、在所述映射表中未查询得到所述目标请求特征对应的目标路由信息时,基于配置信息和所述目标请求特征查询所述目标路由信息,得到查询结果;
6、根据所述查询结果确定目标路由地址,并基于所述目标路由地址将所述服务请求路由至目标分布式设备中。
7、在一种可能的实现方式中,所述配置信息包括目标数据库的地址;所述基于配置信息和所述目标请求特征查询所述目标路由信息,得到查询结果,包括:
8、基于所述目标数据库的地址和所述目标请求特征,向所述目标数据库请求获取所述目标路由信息;
9、接收所述目标数据库发送的响应信息;
10、根据所述响应信息确定所述查询结果。
11、在一种可能的实现方式中,所述根据所述响应信息确定所述查询结果,包括:
12、若所述响应信息中包括所述目标路由信息,则将所述目标路由信息与所述请求特征对应存储于所述映射表中,并确定所述查询结果为已查询得到所述目标路由信息;
13、若所述响应信息中未包括所述目标路由信息,则确定所述查询结果为未查询得到所述目标路由信息。
14、在一种可能的实现方式中,所述配置信息包括目标服务标识;所述基于配置信息和所述目标请求特征查询所述目标路由信息,得到查询结果,包括:
15、确定所述目标服务标识对应的目标路由服务;
16、调用所述目标路由服务,基于所述目标请求特征查询所述目标路由信息,得到查询结果。
17、在一种可能的实现方式中,所述配置信息包括预设脚本;所述基于配置信息和所述目标请求特征查询所述目标路由信息,得到查询结果,包括:
18、基于所述目标请求特征执行所述预设脚本,得到执行结果;
19、若所述执行结果中包括所述目标路由信息,则将所述目标路由信息与所述请求特征对应存储于所述映射表中,并确定所述查询结果为已查询得到所述目标路由信息;
20、若所述执行结果中未包括所述目标路由信息,则确定所述查询结果为未查询得到所述目标路由信息。
21、在一种可能的实现方式中,根据所述查询结果确定目标路由地址,包括:
22、若所述查询结果为已查询得到所述目标路由信息,则在所述目标路由信息中获取所述目标路由地址,或者,在所述目标路由信息中获取目标分片号,并基于所述目标分片号获取所述目标路由地址;
23、若所述查询结果为未查询得到所述目标路由信息,则根据所述目标请求特征和分片计算规则,确定所述目标路由地址。
24、在一种可能的实现方式中,所述根据所述目标请求特征和分片计算规则,确定所述目标路由地址,包括:
25、根据所述目标请求特征和所述分片计算规则,计算所述服务请求对应的目标分片号;
26、根据所述目标分片号,在多个分布式设备中确定所述目标分布式设备;
27、确定所述目标分布式设备的接口地址;
28、将所述接口地址确定为所述目标路由地址。
29、在一种可能的实现方式中,所述映射表包括多个路由信息;所述方法还包括:
30、响应于所述映射表中包括的路由信息的数量大于预设阈值,在所述多个路由信息中确定待删除路由信息;或者,
31、基于预设周期在所述多个路由信息中确定待删除路由信息;
32、在所述映射表中删除所述待删除路由信息;
33、其中,所述待删除路由信息基于最近最少使用算法确定。
34、第二方面,本技术实施例提供一种请求路由装置,应用于路由设备,包括:
35、接收模块,用于接收服务请求;
36、确定模块,用于确定所述服务请求的目标请求特征;
37、查询模块,用于基于所述目标请求特征在所述路由设备中的映射表中进行路由信息查询,所述映射表中包括的路由信息的数量小于或等于预设阈值;
38、所述查询模块,还用于在所述映射表中未查询得到所述目标请求特征对应的目标路由信息时,基于配置信息和所述目标请求特征查询所述目标路由信息,得到查询结果;
39、所述确定模块,还用于根据所述查询结果确定目标路由地址;
40、路由模块,用于基于所述目标路由地址将所述服务请求路由至目标分布式设备中。
41、在一种可能的实现方式中,所述配置信息包括目标数据库的地址;所述查询模块具体还用于:
42、基于所述目标数据库的地址和所述目标请求特征,向所述目标数据库请求获取所述目标路由信息;
43、接收所述目标数据库发送的响应信息;
44、根据所述响应信息确定所述查询结果。
45、在一种可能的实现方式中,所述查询模块具体还用于:
46、若所述响应信息中包括所述目标路由信息,则将所述目标路由信息与所述请求特征对应存储于所述映射表中,并确定所述查询结果为已查询得到所述目标路由信息;
47、若所述响应信息中未包括所述目标路由信息,则确定所述查询结果为未查询得到所述目标路由信息。
48、在一种可能的实现方式中,所述配置信息包括目标服务标识;所述查询模块具体还用于:
49、确定所述目标服务标识对应的目标路由服务;
50、调用所述目标路由服务,基于所述目标请求特征查询所述目标路由信息,得到查询结果。
51、在一种可能的实现方式中,所述配置信息包括预设脚本;所述查询模块具体还用于:
52、基于所述目标请求特征执行所述预设脚本,得到执行结果;
53、若所述执行结果中包括所述目标路由信息,则将所述目标路由信息与所述请求特征对应存储于所述映射表中,并确定所述查询结果为已查询得到所述目标路由信息;
54、若所述执行结果中未包括所述目标路由信息,则确定所述查询结果为未查询得到所述目标路由信息。
55、在一种可能的实现方式中,所述确定模块具体还用于:
56、若所述查询结果为已查询得到所述目标路由信息,则在所述目标路由信息中获取所述目标路由地址,或者,在所述目标路由信息中获取目标分片号,并基于所述目标分片号获取所述目标路由地址;
57、若所述查询结果为未查询得到所述目标路由信息,则根据所述目标请求特征和分片计算规则,确定所述目标路由地址。
58、在一种可能的实现方式中,所述确定模块具体还用于:
59、根据所述目标请求特征和所述分片计算规则,计算所述服务请求对应的目标分片号;
60、根据所述目标分片号,在多个分布式设备中确定所述目标分布式设备;
61、确定所述目标分布式设备的接口地址;
62、将所述接口地址确定为所述目标路由地址。
63、在一种可能的实现方式中,所述映射表包括多个路由信息;所述请求路由装置还包括删除模块,其中:
64、所述确定模块,还用于响应于所述映射表中包括的路由信息的数量大于预设阈值,在所述多个路由信息中确定待删除路由信息;或者,基于预设周期在所述多个路由信息中确定待删除路由信息;
65、所述删除模块,用于在所述映射表中删除所述待删除路由信息;其中,所述待删除路由信息基于最近最少使用算法确定。
66、第三方面,本技术实施例提供一种路由设备,包括:存储器和处理器;
67、所述存储器存储计算机执行指令;
68、所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器实现如第一方面任一项所述的方法。
69、第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面任一项所述的方法。
70、第五方面,本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面任一项所述的方法。
71、本技术实施例提供的请求路由方法、装置、路由设备、存储介质和程序产品,该方法可以应用于路由设备中,路由设备可以接收服务请求,确定服务请求的目标请求特征,并基于目标请求特征在路由设备中的映射表中进行路由信息查询。该方法通过控制映射表中包括的路由信息的数量小于或等于预设阈值,来降低路由设备对服务请求的路由信息的查询量,减少路由设备确定服务请求对应的路由信息的时间,加快了基于路由信息路由服务请求的效率。并且,该方法在映射表中未查询得到目标请求特征对应的目标路由信息时,还可以基于配置信息查询目标路由信息得到查询结果,根据查询结果确定目标路由地址,提高了确定目标路由地址的可靠性,使得路由设备对服务请求路由的过程更可靠准确。
本文地址:https://www.jishuxx.com/zhuanli/20240905/289044.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。