一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种路由分发方法、装置、设备及可读存储介质与流程

2022-03-09 04:02:27 来源:中国专利 TAG:


1.本发明实施例涉及通信技术领域,尤其涉及一种路由分发方法、装置、设备及可读存储介质。


背景技术:

2.现有网络架构系统多中心部署,异地双活,使用dns(domain name resolution,域名解析)、ltm(local traffic management,本地流量管理)、waf(web application firewall,web应用防护系统)和gateway(网关)等网络设备和中间件控制请求分发路由,路由分发实现方式主要通过负载均衡设备或网关层等预设好分区标示进行分发,其分发策略较为固定,无法对用户请求精准分发,稳定性易受运营商影响。


技术实现要素:

3.本发明实施例提供一种路由分发方法、装置、设备及可读存储介质,解决了现有技术中使用负载均衡设备或网关层等进行路由分发导致无法对用户请求精准分发,且稳定性较差的技术问题。
4.第一方面,本发明实施例提供了一种路由分发方法,应用于服务器端,所述路由分发方法包括:
5.接收至少一个用户终端发送的业务请求;
6.基于所述业务请求中携带的主域名以及所述用户终端的终端信息为所述业务请求配置第一子域名,其中,所述第一子域名为所述主域名所属服务器端下的其中一个子服务器所对应的域名,所述终端信息包括以下至少之一:所述用户终端的ip地址、所述用户终端的终端类型、所述用户终端的终端型号;
7.将所述第一子域名返回至所述用户终端。
8.第二方面,本发明实施例提供了一种路由分发装置,所述路由分发装置包括:
9.请求接收模块,用于接收至少一个用户终端发送的业务请求;
10.路由分发模块,用于基于所述业务请求中携带的主域名以及所述用户终端的终端信息为所述业务请求配置第一子域名,其中,所述第一子域名为所述主域名所属服务器端下的其中一个子服务器所对应的域名,所述终端信息包括以下至少之一:所述用户终端的ip地址、所述用户终端的终端类型、所述用户终端的终端型号;
11.域名返回模块,用于将所述第一子域名返回至所述用户终端。
12.第三方面,本发明实施例提供了一种路由分发设备,所述路由分发设备包括:
13.一个或多个处理器;
14.存储装置,用于存储一个或多个程序;
15.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例第一方面任意的路由分发方法。
16.第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程
序,该程序被处理器执行时实现如本发明实施例第一方面任意的路由分发方法。
17.本发明实施例公开了一种路由分发方法、装置、设备及可读存储介质,方法包括接收至少一个用户终端发送的业务请求;基于业务请求中携带的主域名以及用户终端的终端信息为业务请求配置第一子域名,其中,第一子域名为主域名所属服务器端下的其中一个子服务器所对应的域名,终端信息包括以下至少之一:用户终端的ip地址、用户终端的终端类型、用户终端的终端型号;将第一子域名返回至用户终端。本技术解决了现有技术中使用负载均衡设备或网关层等进行路由分发导致无法对用户请求精准分发,且稳定性较差的技术问题,实现了能够对用户请求精准分发,且提高了系统稳定性和系统容错性的技术效果。
附图说明
18.图1是本发明实施例提供的一种路由分发方法的流程图;
19.图2是本发明实施例提供的另一种路由分发方法的流程图;
20.图3是本发明实施例提供的又一种路由分发方法的流程图;
21.图4是本发明实施例提供的一种路由分发装置的结构图;
22.图5为本发明实施例提供的一种路由分发设备的结构示意图。
具体实施方式
23.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
24.需要说明的是,本发明的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于限定特定顺序。本发明下述各个实施例可以单独执行,各个实施例之间也可以相互结合执行,本发明实施例对此不作具体限制。
25.图1是本发明实施例提供的一种路由分发方法的流程图。该路由分发方法可以由路由分发装置来执行,该装置可以采用硬件和/或软件的方式来实现,并一般可集成于服务器中。
26.如图1所示,该路由分发方法应用于服务器端,具体包括如下步骤:
27.s101,接收至少一个用户终端发送的业务请求。
28.具体地,用户终端可以为需要进行网络访问请求的终端设备,例如智能手机、平板电脑、智能穿戴设备等,当用户终端需要进行网络访问时,首先需要向服务器端发送业务请求。
29.s102,基于业务请求中携带的主域名以及用户终端的终端信息为业务请求配置第一子域名,其中,第一子域名为主域名所属服务器端下的其中一个子服务器所对应的域名,终端信息包括以下至少之一:用户终端的ip地址、用户终端的终端类型、用户终端的终端型号。
30.具体地,为了保证网络架构系统的稳定,一个服务器端下设置有多个子服务器端,各子服务器端设置于不同的区域,当其中一个出现问题时,其他的子服务器端依然可以正常工作,维持网络架构系统的正常运转。
31.当用户终端向服务器端发送业务请求之后,该业务请求中携带有主域名以及用户
终端的终端信息,服务器端接收到该业务请求之后,设置于服务器端中的路由分发模块会根据其中的主域名以及终端信息为该业务请求配置第一子域名,第一子域名所对应的即为服务器端下的某个子服务器,以此实现用户终端的路由分发,即实现对用户终端的分流。
32.s103,将第一子域名返回至用户终端。
33.具体地,在服务器端为该业务请求配置好相应的第一子域名之后,将第一子域名返回至用户终端,后续该用户终端的所有业务请求均使用第一子域名进行访问,使得对用户的请求分发更加精准。
34.具体来说,现有技术通过网关层进行分流,同一个网关层可能对应多个网络架构系统,当需要对其中一个网络架构系统进行配置更改时,同一个网关层下的其他网络架构系统可能会出现不稳定的情况,与现有技术不同,本发明实施例是基于域名实现用户终端的分流,其主要作用于应用层,网络架构系统中的服务器端在接收到业务请求之后,会以其中携带的主域名访问路由分发服务(即上述路由分发模块),路由分发服务根据用户终端的终端信息配置相应的第一子域名,并将第一子域名返回至服务器端,服务器端得到第一子域名之后将主域名替换成第一子域名,然后以第一子域名进行相应的处理逻辑服务,后续该用户终端所有的业务请求均使用该第一子域名执行;当需要对其中一个网络架构系统进行配置更改时,由于不涉及网关层的配置,不会影响其他网络架构系统的稳定性,也进一步提高了系统的容错性。
35.需要说明的是,路由分发服务可根据网络架构系统的业务、网络架构系统的特性可定制化的部署在多个网络架构系统上。
36.此外,在本发明实施例中,由于互联网应用一大特点是高频版本迭代,随着系统架构日趋复杂,也对系统、机器设备及机房提出更高要求,要求单个机房出现故障,做到迅速响应。同时,对于银行等金融系统需要避免单点故障,所以要求具备两地三中心的分布式架构能力,然而这种水平模式的分布式架构虽然具有一定的容灾能力,但是因为远距离导致的多中心网络延时问题成为了制约业务发展的重要因素,并且,在同一个会话中,用户终端请求进入一地区的后台服务,接下来请求可能会漂移到另一地区集群,导致之前的会话消失,即出现两地三中心ip漂移问题。
37.但使用本发明实施例所提供的路由分发方法,使得在同一会话中,可以控制同一用户访问同一地域(即访问同一子服务器所对应的子域名),路由分发模块部署在网络架构系统的服务器端的主域名下,当网络架构系统每次启动时,接收到的用户终端的第一个业务请求会触发路由分发模块,路由分发模块会识别该业务请求所在的地域并返回其相应的子域名用户终端,用户终端在获取到了子域名后,此次会话的后续请求都会以该子域名访问。因此,该用户终端在本次会话都会访问固定地域的机房,即访问固定的子服务器,再结合原有会话保持机制,保证了该用户终端在某业务场景下会一直由固定的子服务器提供服务,减少网络延迟,优化用户体验,避免了两地三中心ip漂移问题的发生。
38.本技术解决了现有技术中使用负载均衡设备或网关层等进行路由分发导致无法对用户请求精准分发,且稳定性较差的技术问题,实现了能够对用户请求精准分发,且提高了系统稳定性和系统容错性的技术效果。
39.在本发明上述各技术方案的基础上,图2是本发明实施例提供的另一种路由分发方法的流程图,如图2所示,s102具体包括:
40.s201,基于用户终端的终端信息生成用户终端的用户标识。
41.s202,提取业务请求中的主域名,基于主域名以及用户标识确定业务请求的第一子域名。
42.具体地,用户终端的终端信息包括但不限于用户终端的ip地址、用户终端的终端类型以及用户终端的终端型号,服务器端会基于该终端信息生成相应的用户标识,并基于主域名以及用户标识为该业务请求分配第一子域名。示例性地,主域名表明了用户终端所发起请求的地区所对应的主服务器(即上述服务器端),用户标识可以根据需要设置为ip地址的末尾数字,例如当末尾数字为0时,将子服务器a所对应的第一子域名配置给该用户终端。
43.可选地,在s201,基于用户终端的终端信息生成用户终端的用户标识之前,还包括:判断业务请求中是否携带有用户终端的用户标识;若是,则提取业务请求中的用户标识;若否,则执行基于用户终端的终端信息生成用户标识。
44.具体地,用户终端的用户标识可以根据需要预先进行设置,然后携带于用户终端发送的业务请求中,当业务请求被发送至服务器端之后,服务器端会先判断该业务请求中是否携带有预先设置的用户标识,若有,则直接使用该用户标识即可,若没有,则执行基于用户终端的终端信息生成用户标识的步骤。
45.可选地,在s201,基于业务请求中携带的主域名以及用户终端的终端信息为业务请求配置第一子域名之后,还包括:查询预设可用域名列表确定第一子域名是否可用;若否,则为业务请求配置第二子域名,其中,第二子域名为主域名所属服务器端下除第一子域名所对应的子服务器外,另一个子服务器所对应的域名。
46.具体地,服务器端预先设置有预设可用域名列表,列表中记录有当前可用的子域名名单,在确定用户终端所对应的第一子域名之后,服务器端还会查询该预设可用域名列表以确定该第一子域名当前是否可用,若列表中记录第一子域名不可用,则表明第一子域名所对应的子服务器出现问题,当前不可用,则继续为该业务请求配置服务器端下的另一个子服务器所对应的第二子域名。
47.可选地,若查询预设可用域名列表确定主域名所属服务器端下的所有子服务器所对应的子域名均不可用,则将主域名配置给业务请求。
48.具体地,若查询确定该服务器端下的所有子服务器均出现故障,即所有子域名均不可用,则服务器端会将主域名返回至该用户终端。
49.需要说明的是,子域名不可用,可能为相应的子服务器出现问题,也可能是子服务器与服务器端之间的前端链路不通所导致。
50.可选地,每间隔第一预设时间向服务器端下的每个子服务器发送查询请求,并根据是否在第二预设时间范围内接收到各子服务器的回应判断子服务器所对应的子域名是否可用,得到查询结果;根据查询结果实时更新预设可用域名列表。
51.具体地,为了保证预设可用域名列表的时效性,每间隔第一预设时间,服务器端会向其下设的每个子服务器发送一个查询请求,若在一定时间范围内(即上述第二预设时间)接受到了该子服务器的反馈,则表明该子服务器无故障,,可以使用,否则表明该子服务器故障,其相对应的子域名不可用,服务器端会根据查询结果实时更新预设可用域名列表,以使为用户终端配置相应的子域名时的准确性以及稳定性更佳。
52.在本发明上述各技术方案的基础上,图3是本发明实施例提供的又一种路由分发方法的流程图,如图3所示,当两个或两个以上用户终端发送业务请求时,s102具体包括如下步骤:
53.s301,基于每个用户终端的终端信息生成各用户终端的用户标识。
54.具体地,当有多个用户终端发送业务请求之后,服务器端在接收到各业务请求之后,会基于各业务请求携带的终端信息生成各自的用户标识。
55.需要说明的是,由于用户终端的用户标识可能预先设置于业务请求中,因此服务器端在接收到业务请求之后首先会判断该业务请求中是否携带有用户标识,若有,则直接使用该用户标识,若没有,则执行步骤s301。
56.s302,提取各业务请求中携带的主域名。
57.具体地,在得到用户终端的用户标识之后,服务器端会提取各业务请求中携带的主域名。
58.s303,基于主域名以及用户标识,通过预设规则确定每个业务请求的第一子域名,其中,预设规则为根据预设用户白名单、用户终端型号或用户标识确定出的用户将用户终端进行分类的依据。
59.具体地,预设规则可以是根据需要设置的用于选定特定用户的规则,即用户将用户终端进行分类的依据,通过步骤s303,可以将满足相同条件的用户终端的业务请求分为一类,即可将满足相同条件的用户终端配置在同一个子服务器下。
60.在本发明实施例中,当需要调整某子服务器下的用户终端比例或改变原有路由分发方式的某些业务场景情况下,服务器端中的路由分发模块可以根据地域、用户终端的终端信息等选定特定用户终端访问特定的子服务器,即将满足预设规则的用户终端配置为同一个第一子域名。
61.此外,当上线一个新的业务系统或者应用时,通常会面临生产上复杂的用户数据验证及系统并发性能稳定的考验,由于在不同测试环境下的测试案例通常不能完全涵盖生产环境的情况,因此可以通过路由分发模块中设置的预设规则进行用户终端的控制,即使用满足预设规则的一部分用户终端进行测试,能够有效验证新业务系统或新应用的稳定性。
62.图4是本发明实施例提供的一种路由分发装置的结构图,如图4所示,该路由分发装置包括:
63.请求接收模块41,用于接收至少一个用户终端发送的业务请求;
64.路由分发模块42,用于基于业务请求中携带的主域名以及用户终端的终端信息为业务请求配置第一子域名,其中,第一子域名为主域名所属服务器端下的其中一个子服务器所对应的域名,终端信息包括以下至少之一:用户终端的ip地址、用户终端的终端类型、用户终端的终端型号;
65.域名返回模块43,用于将子域名返回至用户终端。
66.可选地,路由分发模块42包括:
67.标识生成子模块,用于基于用户终端的终端信息生成用户终端的用户标识;
68.域名确定子模块,用于提取业务请求中的主域名,基于主域名以及用户标识确定业务请求的第一子域名。
69.可选地,在标识生成子模块基于用户终端的终端信息生成用户终端的用户标识之前,路由分发装置还包括:
70.标识判断模块,用于判断业务请求中是否携带有用户终端的用户标识;
71.标识提取模块,用于若标识判断模块的判断结果为是,则提取业务请求中的用户标识;
72.若标识判断模块的判断结果为否,则路由分发模块42执行基于用户终端的终端信息生成用户标识。
73.可选地,在路由分发模块42基于业务请求中携带的主域名以及用户终端的终端信息为业务请求配置第一子域名之后,路由分发装置还包括:
74.查询模块,用于查询预设可用域名列表确定第一子域名是否可用;
75.若查询模块的查询结果为否,则路由分发模块42为业务请求配置第二子域名,其中,第二子域名为主域名所属服务器端下除第一子域名所对应的子服务器外,另一个子服务器所对应的域名。
76.可选地,若查询模块的查询结果为主域名所属服务器端下的所有子服务器所对应的子域名均不可用,则路由分发模块42将主域名配置给业务请求。
77.可选地,路由分发模块42还用于每间隔第一预设时间向服务器端下的每个子服务器发送查询请求,并根据是否在第二预设时间范围内接收到各子服务器的回应判断子服务器所对应的子域名是否可用,得到查询结果;根据查询结果实时更新预设可用域名列表。
78.本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
79.本发明实施例提供的路由分发装置,与上述实施例提供的路由分发方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
80.图5为本发明实施例提供的一种路由分发设备的结构示意图,如图5所示,该路由分发设备包括处理器51、存储器52、输入装置53和输出装置54;路由分发设备中处理器51的数量可以是一个或多个,图5中以一个处理器51为例;路由分发设备中的处理器51、存储器52、输入装置53和输出装置54可以通过总线或其他方式连接,图5中以通过总线连接为例。
81.存储器52作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的路由分发方法对应的程序指令/模块(例如,路由分发装置中的请求接收模块41、路由分发模块42以及域名返回模块43)。处理器51通过运行存储在存储器52中的软件程序、指令以及模块,从而执行路由分发设备的各种功能应用以及数据处理,即实现上述的路由分发方法。
82.存储器52可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器52可进一步包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至路由分发设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
83.输入装置53可用于接收输入的数字或字符信息,以及产生与路由分发设备的用户设置以及功能控制有关的键信号输入。输出装置54可包括显示屏等显示设备。
84.本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种路由分发方法。
85.具体地,该路由分发方法包括:
86.接收至少一个用户终端发送的业务请求;
87.基于业务请求中携带的主域名以及用户终端的终端信息为业务请求配置第一子域名,其中,第一子域名为主域名所属服务器端下的其中一个子服务器所对应的域名,终端信息包括以下至少之一:用户终端的ip地址、用户终端的终端类型、用户终端的终端型号;
88.将第一子域名返回至用户终端。
89.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的路由分发方法中的相关操作。
90.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
91.值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
92.在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
93.最后应说明的是,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献