本发明涉及计算机,尤其涉及一种服务器筛选的方法和装置。
背景技术:
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、上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
1.一种服务器筛选的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述多个服务器分组之间具有树状关联关系,每个服务器分组作为所述树状关联关系的一个节点;根据所述分组权重,在所述多个服务器分组中筛选出目标服务器分组,包括:
3.根据权利要求2所述的方法,其特征在于,在更新所述目标服务器分组的分组权重之后,所述方法还包括:
4.根据权利要求2所述的方法,其特征在于,所述分组权重包括:初始分组权重和实时分组权重;根据与当前节点连接的各个子节点对应的服务器分组的分组权重,在所述各个子节点中筛选出目标子节点,包括:
5.根据权利要求4所述的方法,其特征在于,更新所述目标服务器分组的分组权重,包括:
6.根据权利要求1所述的方法,其特征在于,所述服务器权重包括:初始服务器权重和实时服务器权重;根据所述服务器权重,在所述各个服务器中筛选出目标服务器,包括:
7.根据权利要求6所述的方法,其特征在于,更新所述目标服务器的服务器权重,包括:
8.一种服务器筛选的装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
