一种动态获取并选择路由规则的代理路由方法
文献发布时间:2023-06-19 11:26:00
技术领域
本发明属于通信技术领域,尤其是涉及一种动态获取并选择路由规则的代理路由方法。
背景技术
代理服务器是网络信息的中转站。一般情况下,使用网络浏览器直接去链接其它Internet站点并取得网络信息时,须送出请求信号来得到应答,然后对方再把信息传送回来,现有的代理服务器主流技术手段有nginx、LVS、Apache和SpringGateway等,主要是通过数据请求的地址和请求头等确定后端的服务地址,然后代理请求至后端。
现有的技术方案都有三个缺点:
一、代理服务器选择后端服务器的路由规则在时间上滞后,因为代理服务器不能实时动态的决定路由选择,所以代理服务器的路由选择规则总是滞后的;
二、代理服务器无法通过Internet的请求参数,进行更贴近业务的路由选择。
三、代理的路由规则是固定的,无法动态更新。
发明内容
有鉴于此,本发明旨在提出一种动态获取并选择路由规则的代理路由方法,以解决代理服务器无法实时动态选择和更新路由规则的问题。
为达到上述目的,本发明的技术方案是这样实现的:
一种动态获取并选择路由规则的代理路由方法,包括如下步骤:
S1、通过通用路由业务规则转化成通用路由规则;
S2、进行Internet请求的路由转发;
S3、代理服务器接收到Internet请求后,判断是否可以利用通过路由规则进行路由;如果可以,则直接路由至后端服务器;如果不可以,则进行步骤S4;
S4、通过规则服务器计算该请求试用的路由规则,然后根据结果动态选择路由进行转发,并使用选择的路由规则将请求代理至目标后端服务器。
进一步的,所述步骤S1具体步骤为:
S101、代理服务器定时从业务规则路由器请求通用业务规则;
S102、代理服务器将通用业务规则动态加载通用路由规则。
进一步的,所述步骤S2具体为:将步骤S1通用路由规则加载至内存中,定期重复步骤S1、S2,并接收Internet请求。
进一步的,所述步骤S4具体步骤为:
S401、代理服务器向业务规则服务器请求计算该次Internet请求的类型;
S403、代理服务器根据计算出的请求类型结构,对等待选择路由的请求添加标签及参数;
S404、根据添加的标签及其他参数,动态选择路由规则;
S405、使用选择的路由规则将请求代理至目标后端服务器。
相对于现有技术,本发明所述的一种动态获取并选择路由规则的代理路由方法具有以下优势:
本发明所述的一种动态获取并选择路由规则的代理路由方法实现了在代理服务器不重启、服务不下线的情况下,可以动态更新路由规则和基于后端复杂业务逻辑实时选择路由的功能。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例所述的一种动态获取并选择路由规则的代理路由方法流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明中的具体含义。
下面将参考附图并结合实施例来详细说明本发明。
如图1所示,一种动态获取并选择路由规则的代理路由方法,包括如下步骤:
S1、通过通用路由业务规则转化成通用路由规则;
S2、进行Internet请求的路由转发;
S3、代理服务器接收到Internet请求后,判断是否可以利用通过路由规则进行路由;如果可以,则直接路由至后端服务器;如果不可以,则进行步骤S4;
S4、通过规则服务器计算该请求试用的路由规则,然后根据结果动态选择路由进行转发,并使用选择的路由规则将请求代理至目标后端服务器。
所述步骤S1具体步骤为:
S101、代理服务器定时从业务规则路由器请求通用业务规则;
S102、代理服务器将通用业务规则动态加载通用路由规则。
所述步骤S2具体为:将步骤S1通用路由规则加载至内存中,定期(例如每过30秒)重复步骤S1、S2,并接收Internet请求。
所述步骤S4具体步骤为:
S401、代理服务器向业务规则服务器请求计算该次Internet请求的类型;
S403、代理服务器根据计算出的请求类型结果,对等待选择路由的请求添加标签及参数(URL、固定的参数);
S404、根据添加的标签及其他参数(URL、固定的参数),动态选择路由规则;
S405、使用选择的路由规则将请求代理至目标后端服务器。
实施例如:实现本方案的路由服务器(下称动态路由器)获取通用业务规则后,转化为了向天津和北京地区请求虚拟机列表的路由规则,然后保存至路由规则池中。当用户发送Internet请求至天津地区的虚拟机列表时,动态路由器直接将该请求路由至天津地区对应的后端业务服务器。
而当用户请求天津地区的裸金属列表时,动态路由器判断无法处理该请求,于是暂停并保留该请求,并将请求包含的内容发往规则服务器,规则服务器计算后返回裸金属列表的相关规则,动态路由器将此规则转化为路由规则并添加至路由规则池中,然后将此次暂停的请求路由至天津地区的裸金属列表对应的后端业务服务器。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种动态获取并选择路由规则的代理路由方法
- 用于基于路由选择规则选择性地对通信进行路由选择的方法、网络和计算机程序产品