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

服务器集群的流量配置、流量分配以及服务程序升级方法与流程

2022-07-16 23:40:27 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种服务器集群的流量配置、流量分配以及服务程序升级方法。


背景技术:

2.服务器集群,由多个服务器主机构成,该多个服务器主机拥有完全相同的功能,被归为一组整体进行管理和提供服务。
3.目前,随着互联网的迅猛发展,其相关业务流量也呈现爆炸性增长,相关技术,一般采用比如nginx/apache/squid等反向代理服务器实现对服务器集群的流量的分配和控制。然而,这种流量分配和控制方式,在服务器集群采用的服务程序从老版本升级至新版本时,由于新老版本的服务程序同时提供服务,易出现因新老版本混用而导致用户端数据错乱的情况。


技术实现要素:

4.本技术旨在至少在一定程度上解决相关技术中的技术问题之一。
5.本技术提出一种服务器集群的流量配置、流量分配以及服务程序升级方法,以解决相关技术中的流量分配和控制方式,在服务器集群采用的服务程序进行版本升级时,由于新老版本的服务程序同时提供服务,易出现因新老版本混用而导致用户端数据错乱的情况的技术问题。
6.本技术第一方面实施例提出了一种服务器集群的流量配置方法,应用于分流配置服务器,包括:监测多个服务器集群采用的服务程序的版本;根据所述多个服务器集群采用的服务程序的版本,配置所述多个服务器集群的流量状态;将所述多个服务器集群的流量状态同步至域名系统dns服务器,以使所述域名系统dns服务器根据更新的流量状态对所述多个服务器集群进行流量分配。
7.本技术提供的服务器集群的流量配置方法,通过根据多个服务器集群采用的服务程序的版本,对多个服务器集群的流量状态进行配置,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
8.本技术第二方面实施例提出了一种服务器集群的流量分配方法,应用于dns服务器,包括:接收分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态;根据所述流量状态对多个服务器集群进行流量分配。
9.本技术实施例提供的服务器集群的流量分配方法,通过接收分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态,根据流量状态对多个服务器集群进行流量分配,实现了根据分流配置服务器所同步的流量状态对多个服务器集群进行流量分配。
10.本技术第三方面实施例提出了一种服务器集群的服务程序升级方法,应用于服务
器集群,包括:监测dns服务器分配的流量,以确定所述服务器集群的状态;其中,所述流量是所述dns服务器根据分流配置服务器采用如上第一方面实施例所述的流量配置方法所同步的流量状态进行分配得到;根据所述服务器集群的状态,进行服务程序的版本升级。
11.本技术实施例提供的服务器集群的服务程序升级方法,通过监测dns服务器分配的流量,以确定服务器集群的状态,根据服务器集群的状态,进行服务程序的版本升级,实现了对服务器集群的服务程序的版本升级,且避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
12.本技术第四方面实施例提出了一种分流配置服务器,包括:监测模块,用于监测多个服务器集群采用的服务程序的版本;配置模块,用于根据所述多个服务器集群采用的服务程序的版本,配置所述多个服务器集群的流量状态;同步模块,用于将所述多个服务器集群的流量状态同步至域名系统dns服务器,以使所述域名系统dns服务器根据更新的流量状态对所述多个服务器集群进行流量分配。
13.本技术提供的分流配置服务器,通过根据多个服务器集群采用的服务程序的版本,对多个服务器集群的流量状态进行配置,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
14.本技术第五方面实施例提出了一种dns服务器,包括:接收模块,用于接收分流配置服务器采用如上第一方面实施例所述的流量配置方法所同步的流量状态;分配模块,用于根据所述流量状态对多个服务器集群进行流量分配。
15.本技术实施例提供的dns服务器,通过接收分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态,根据流量状态对多个服务器集群进行流量分配,实现了根据分流配置服务器所同步的流量状态对多个服务器集群进行流量分配。
16.本技术第六方面实施例提出了一种服务器集群,包括:监测模块,用于监测dns服务器分配的流量,以确定所述服务器集群的状态;其中,所述流量是所述dns服务器根据分流配置服务器采用如上第一方面实施例所述的流量配置方法所同步的流量状态进行分配得到;升级模块,用于根据所述服务器集群的状态,进行服务程序的版本升级。
17.本技术实施例提供的服务器集群,通过监测dns服务器分配的流量,以确定服务器集群的状态,根据服务器集群的状态,进行服务程序的版本升级,实现了对服务器集群的服务程序的版本升级,且避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
18.本技术第七方面实施例提出了一种服务器集群的流量配置系统,包括多个用于执行如上第三方面实施例所述的服务程序升级方法的服务器集群;用于执行如上第一方面实施例所述的流量配置方法,以对多个所述服务器集群的流量状态进行配置的分流配置服务器;以及用于执行如上第二方面实施例所述的流量分配方法,以对多个所述服务器集群进行流量分配的dns服务器。
19.本技术第八方面实施例提出了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本技术第一方面实施例或者第二方面实施例或者第三方面实施例提出的方法。
20.本技术第九方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如本技术第一方面实施例或者第二方面实施例或者第三方面实施例提出的方法。
21.本技术第十方面实施例提出了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如本技术第一方面实施例或者第二方面实施例或者第三方面实施例提出的方法。
22.本技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实践了解到。
附图说明
23.本技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
24.图1为本技术实施例提供的服务器集群的流量配置方法的流程示意图;
25.图2为本技术实施例所提供的服务器集群的流量配置方法的另一流程示意图;
26.图3为本技术实施例提供的服务器集群a和服务器集群b的正常流量分布图;
27.图4为本技术实施例提供的服务器集群a和服务器集群b在第一流量状态下的流量分布图;
28.图5为本技术实施例提供的服务器集群a和服务器集群b在第一流量状态下的另一流量分布图;
29.图6为本技术实施例提供的服务器集群a和服务器集群b在第二流量状态下的流量分布图;
30.图7为本技术实施例提供的服务器集群a和服务器集群b在第二流量状态下的另一流量分布图;
31.图8为本技术实施例提供的服务器集群a和服务器集群b在第二流量状态下的又一流量分布图;
32.图9为本技术实施例提供的服务器集群a和服务器集群b在第三流量状态下的流量分布图;
33.图10为本技术实施例所提供的服务器集群的流量分配方法的流程示意图;
34.图11为本技术实施例所提供的服务器集群的服务程序升级方法的流程示意图;
35.图12为本技术实施例所提供的服务器集群的服务程序升级方法的另一流程示意图;
36.图13为本技术实施例所提供的分流配置服务器的结构示意图;
37.图14为本技术实施例所提供的dns服务器的结构示意图;
38.图15为本技术实施例所提供的服务器集群的结构示意图;
39.图16示出了适于用来实现本技术实施方式的示例性电子设备的框图。
具体实施方式
40.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附
图描述的实施例是示例性的,旨在用于解释本技术,而不能理解为对本技术的限制。
41.目前,随着互联网的迅猛发展,其相关业务流量也呈现爆炸性增长,相关技术,一般采用比如nginx/apache/squid等反向代理服务器实现对服务器集群的流量的分配和控制。然而,这种流量分配和控制方式,在服务器集群采用的服务程序从老版本升级至新版本时,由于新老版本的服务程序同时提供服务,易出现因新老版本混用而导致用户端数据错乱的情况。
42.比如,在服务器集群a采用的服务程序从老版本升级至新版本时,服务器集群a的新版本的服务程序提供服务,而对于未进行服务程序的版本升级的服务器集群b,则是老版本的服务程序提供服务,由于新老版本的服务程序同时提供服务,则用户端通过服务器集群a和服务器集群b的服务程序实现某个功能时,易出现用户端数据错乱的情况。
43.本技术主要针对上述技术问题,提出一种能够避免服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生的服务器集群的流量配置方法、流量分配方法、服务程序升级方法、分流配置服务器、dns(domain name system,域名系统)服务器、服务器集群、服务器集群的流量配置系统、电子设备、存储介质以及计算机程序产品。
44.下面参考附图描述本技术实施例的服务器集群的流量配置方法、流量分配方法、服务程序升级方法、分流配置服务器、dns服务器、服务器集群、服务器集群的流量配置系统、电子设备、存储介质以及计算机程序产品。
45.为了清楚说明本技术实施例提供的技术方案,首先对本技术实施例提供的分流配置服务器以及所涉及的名词进行解释。
46.分流配置服务器,具有以下功能:配置各服务器集群为启用状态或禁用状态,以及配置各服务器集群采用的服务程序的生效版本。并且,分流配置服务器可以将配置的多个服务器集群的流量状态同步至dns服务器,将配置的各服务器集群采用的服务程序的生效版本同步至对应服务器集群。
47.其中,dns服务器,为互联网提供的服务,它作为将域名和ip(internet protocol,互联网协议)地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。比如,dns服务器可以将网址http://xiaozhi.jd.com映射为具体的主机ip地址:1.2.3.4。
48.参考表1,分流配置服务器可以配置服务器集群a以及服务器集群b为启用状态。其中,表1中的“ip列表”列中,“1.2.3.4”和“2.3.4.5”分别表示服务器集群a中的不同服务器主机的ip地址,“5.6.7.8”和“9.0.1.2”分别表示服务器集群b中的不同服务器主机的ip地址。表1中的“集群标识”列中,“jimi1”和“jimi2”分别表示服务器集群a和服务器集群b的标识,服务器集群的标识,用于唯一标识服务器集群。
49.表1服务器集群的流量配置
50.51.需要说明的是,对于处于启用状态的服务器集群,dns服务器会将流量分配到该服务器集群,即用户所在客户端(本技术实施例中也称为用户端)访问某个网址时,dns服务器会向客户端返回该服务器集群的ip地址,从而该服务器集群可以为客户端访问该网址提供服务;对于处于禁用状态的服务器集群,dns服务器不会将流量分配到该服务器集群,即用户所在客户端访问某个网址时,dns服务器不会向客户端返回该服务器集群的ip地址,从而该服务器集群不为客户端访问该网址提供服务。其中,流量,可以理解为用户通过浏览器使用服务器集群的服务程序的服务时,提供给用户通过浏览器访问指定域名地址的http(hyper text transfer protocol,超文本传输协议)或https(hyper text transfer protocol over secure socket layer,超文本传输安全协议)流量。
52.参考表2,分流配置服务器还可以配置服务器集群a以及服务器集群b采用的服务程序的各版本是否为有效状态。其中,在某个版本为有效状态时,称该版本为生效版本。表2中的“版本号”列中,“20210619010100”和“20210618010100”分别表示服务器集群采用的服务程序的版本号。版本号,用于唯一标识服务程序的版本。
53.表2服务器集群的服务程序的版本配置
54.集群标识集群名称版本号是否有效jimi1集群a20210619010100有效jimi1集群a20210618010100无效jimi2集群b20210619010100有效jimi2集群b20210618010100无效
55.需要说明的是,每个服务器集群采用的服务程序只有一个生效版本,其余版本为待生效状态,处于待生效状态的版本可以为多个,本技术对此不作限制。对于服务器集群的服务程序的生效版本,在用户所在客户端访问该服务器集群的ip地址时,该服务器集群会通过其中安装的版本获取组件将该生效版本对应的版本号通过web(world wide web,全球广域网)首页返回客户端,以使客户端通过该版本号,从该服务器集群加载该生效版本的具体内容和服务。其中,版本获取组件为服务器集群中的一个sdk(software development kit,软件开发工具包),版本获取组件sdk在服务器集群的每个服务器主机中运行。web首页为用户所在客户端通过流量使用服务器集群提供的功能,首次进入的web页面。
56.下面首先对本技术实施例提供的服务器集群的流量配置方法进行说明。其中,本技术实施例提供的服务器集群的流量配置方法,被配置在分流配置服务器中执行。
57.图1为本技术实施例所提供的服务器集群的流量配置方法的流程示意图。
58.如图1所示,该服务器集群的流量配置方法可以包括以下步骤101-103。
59.步骤101,监测多个服务器集群采用的服务程序的版本。
60.其中,服务程序,指的是服务器集群中的为用户通过浏览器访问具体网页时提供服务的具体程序。其中,服务程序的版本可以根据需要进行更新,在服务程序的版本进行更新后,用户端刷新浏览器即可体验新的版本和服务。
61.在示例性实施例中,分流配置服务器可以监测多个服务器集群采用的服务程序的版本是否需要进行升级,是否已从旧版本升级至新版本(本技术实施例中将旧版本称为第一版本,将新版本称为第二版本),以及各服务器集群中的服务程序的生效版本为哪个版本等。
62.步骤102,根据多个服务器集群采用的服务程序的版本,配置多个服务器集群的流量状态。
63.在示例性实施例中,分流配置服务器可以根据多个服务器集群采用的服务程序的版本,配置多个服务器集群的流量状态。比如,在多个服务器集群中目标服务器集群需要进行版本升级时,分流配置服务器可以配置目标服务器集群为禁用状态,其余服务器集群为启用状态。
64.步骤103,将多个服务器集群的流量状态同步至域名系统dns服务器,以使域名系统dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
65.在示例性实施例中,分流配置服务器配置多个服务器集群的流量状态后,可以将多个服务器集群的流量状态同步至域名系统dns服务器,以使域名系统dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
66.举例来说,假设分流配置服务器配置的多个服务器集群的流量状态为:需要进行版本升级的目标服务器集群为禁用状态,多个服务器集群中的其余服务器集群为启用状态,则将该流量状态同步至dns服务器后,dns服务器可以根据更新的流量状态将流量分配到其余服务器集群,即在用户所在客户端访问某个网址时,dns服务器会将该网址对应的其余服务器集群的ip地址返回客户端,不再返回该网址对应的目标服务器集群的ip地址,从而使得在目标服务器集群进行版本升级时,多个服务器集群中仅其余服务器集群提供服务,由于其余服务器集群中的服务程序的版本一致,从而能够保证多个服务器集群中提供服务的服务程序的版本一致,避免服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生,不会中断用户服务。
67.本技术提供的服务器集群的流量配置方法,监测多个服务器集群采用的服务程序的版本,根据多个服务器集群采用的服务程序的版本,配置多个服务器集群的流量状态,将多个服务器集群的流量状态同步至dns服务器,以使dns服务器根据更新的流量状态对多个服务器集群进行流量分配,由此,通过根据多个服务器集群采用的服务程序的版本,对多个服务器集群的流量状态进行配置,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
68.下面结合图2,对本技术实施例中服务器集群的流量配置方法进行进一步说明。
69.图2为本技术实施例所提供的服务器集群的流量配置方法的流程示意图。如图2所示,该服务器集群的流量配置方法包括以下步骤201-205。
70.步骤201,监测多个服务器集群采用的服务程序的版本。
71.其中,步骤201的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。
72.需要说明的是,分流配置服务器可以在多个服务器集群进行服务程序升级的过程中,持续监测或以预设的时间间隔监测多个服务器集群采用的服务程序的版本,直至多个服务器集群采用的服务程序的版本升级结束。其中,预设的时间间隔,可以根据需要设置,本技术实施例对此不作限制。
73.步骤202,在多个服务器集群中的目标服务器集群的服务程序需要进行版本升级的情况下,配置多个服务器集群为第一流量状态;其中,第一流量状态下目标服务器集群为
禁用状态,多个服务器集群中的其余服务器集群为启用状态。
74.其中,目标服务器集群的数量可以为一个,也可以为多个,本技术对此不作限制。其中,目标服务器集群的数量,与对多个服务器集群进行服务程序的版本升级方式有关,比如,在多个服务器集群均需要进行服务程序的版本升级时,可以设置先对其中的一半数量的服务器集群进行服务程序的版本升级,在这些服务器集群的服务程序的版本升级之后,再对其余一半数量的服务器集群进行服务程序的版本升级,相应的,目标服务器集群的数量为多个服务器集群的一半数量。本技术后续各实施例以多个服务器集群包括服务器集群a和服务器集群b这两个服务器集群为例进行说明。
75.在示例性实施例中,在多个服务器集群中的目标服务器集群的服务程序需要进行版本升级的情况下,分流服务器配置多个服务器集群为第一流量状态后,可以将第一流量状态同步至dns服务器,以使dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
76.参考图3所示的服务器集群a和服务器集群b的正常流量分布图,在服务器集群a和服务器集群b均未对服务程序进行版本升级前,服务器集群a和服务器集群b均为启用状态。在该流量状态下,dns服务器会将流量分配至服务器集群a和服务器集群b,当用户所在客户端通过浏览器访问某个网页时,可以查询网址对于服务器集群ip地址(步骤301),dns服务器可以轮询向客户端返回服务器集群a或服务器集群b的ip地址,从而客户端可以通过浏览器访问对应服务器集群a或对应服务器集群b(步骤302)。以dns服务器向客户端返回的是服务器集群a的ip地址为例,服务器集群a中的版本获取组件sdk可以读取服务器集群a的生效版本对应的版本号(步骤303),并响应指定版本(服务器集群a的服务程序的生效版本)的首页(步骤304),该首页中包含服务器集群a的服务程序的生效版本对应的版本号,进而客户端通过首页中的版本号,即可自动去服务器集群a中加载生效版本的内容和功能(步骤305)。
77.假设服务器集群b为需要进行版本升级的目标服务器集群,在分流配置服务器确定服务器集群b的服务程序需要进行版本升级的情况下,分流配置服务器可以配置服务器集群a和服务器集群b为第一流量状态。在第一流量状态下,目标服务器集群即服务器集群b为禁用状态,其余服务器集群即服务器集群a为启用状态。并且,分流配置服务器可以将服务器集群a和服务器集群b的流量状态同步至dns服务器,以使dns服务器将流量分配至服务器集群a。
78.参考图4所示的服务器集群a和服务器集群b在第一流量状态下的流量分布图,此时服务器集群a为启用状态,服务器集群b为禁用状态。在该第一流量状态下,dns服务器会将流量分配至服务器集群a,当用户所在客户端通过浏览器访问某个网页时,可以查询网址对于服务器集群ip地址(步骤401),dns服务器可以向客户端返回服务器集群a的ip地址,从而客户端可以通过浏览器访问对应服务器集群a(步骤402)。服务器集群a中的版本获取组件sdk可以读取服务器集群a的生效版本对应的版本号(步骤403),并响应指定版本(服务器集群a的服务程序的生效版本)的首页(步骤404),该首页中包含服务器集群a的服务程序的生效版本对应的版本号,进而客户端通过首页中的版本号,即可自动去服务器集群a中加载生效版本的内容和功能(步骤405)。
79.需要说明的是,本技术实施例的各流量分布图中的sdk,为服务器集群中的版本获
取组件sdk,该版本获取组件sdk在服务器集群的每个服务器主机中运行。
80.步骤203,在多个服务器集群中处于禁用状态的目标服务器集群的服务程序从第一版本升级至第二版本,且服务程序的生效版本为第一版本的情况下,配置多个服务器集群从第一流量状态切换为第二流量状态;其中,第二流量状态下目标服务器集群为启用状态,其余服务器集群为禁用状态。
81.在示例性实施例中,在多个服务器集群为第一流量状态下,处于禁用状态的目标服务器集群可以进行服务程序的版本升级,以从第一版本升级至第二版本,并且,目标服务器集群可以根据分流配置服务器对于目标服务器集群的生效版本的配置,将第一版本切换为有效状态。
82.参考图5所示的服务器集群a和服务器集群b在第一流量状态下的流量分布图,此时服务器集群a为启用状态,服务器集群b为禁用状态。在该第一流量状态下,客户端通过浏览器访问某个网页时的过程(步骤501-505)与图4所示的过程(步骤401-405)相似,此处不再赘述。在服务器集群a和服务器集群b为第一流量状态下,服务器集群b可以进行服务程序的版本升级,在服务器集群b的服务程序从版本号“20210619010100”对应的第一版本升级至版本号“20210620010100”对应的第二版本后,可以根据分流配置服务器对服务器集群b的生效版本的配置,将升级前的版本号“20210619010100”对应的第一版本切换为有效状态。
83.在多个服务器集群中处于禁用状态的目标服务器集群的服务程序从第一版本升级至第二版本,且服务程序的生效版本为第一版本的情况下,分流配置服务器可以配置多个服务器集群从第一流量状态切换为第二流量状态。其中,第二流量状态下目标服务器集群为启用状态,其余服务器集群为禁用状态。并且,分流配置服务器可以将第二流量状态同步至dns服务器,以使dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
84.参考图6所示的服务器集群a和服务器集群b在第二流量状态下的流量分布图,此时服务器集群a为禁用状态,服务器集群b为启用状态。在该第二流量状态下,dns服务器会将流量分配至服务器集群b,当用户所在客户端通过浏览器访问某个网页时,可以查询网址对于服务器集群ip地址(步骤601),dns服务器可以向客户端返回服务器集群b的ip地址,从而客户端可以通过浏览器访问对应服务器集群b(步骤602)。服务器集群b中的版本获取组件sdk可以读取服务器集群b的生效版本对应的版本号(步骤603),并响应指定版本(服务器集群b的服务程序的生效版本)的首页(步骤604),该首页中包含服务器集群b的服务程序的生效版本对应的版本号,进而客户端通过首页中的版本号,即可自动去服务器集群b中加载生效版本的内容和功能(步骤605)。
85.通过上述分析可知,目标服务器集群的服务程序从第一版本升级至第二版本后,可以根据分流配置服务器对目标服务器集群的生效版本的配置,将服务程序的生效版本切换为第一版本。相应的,分流配置服务器在配置多个服务器集群从第一流量状态切换为第二流量状态之前,还可以包括以下步骤:
86.配置目标服务器集群中的服务程序的生效版本为第一版本;
87.向目标服务器集群发送第一版本配置消息,以使目标服务器根据第一版本配置消息进行服务程序的生效版本的切换。
88.其中,第一版本配置消息,用于指示目标服务器集群中的服务程序的生效版本为
第一版本。
89.步骤204,在目标服务器集群中的服务程序的生效版本从第一版本切换至第二版本,以及其余服务器集群中的服务程序从第一版本升级至第二版本且其余服务器集群中的服务程序的生效版本为第二版本的情况下,配置多个服务器集群从第二流量状态切换为第三流量状态;其中,第三流量状态下目标服务器集群和其余服务器集群为启用状态。
90.在示例性实施例中,在多个服务器集群为第二流量状态下,处于启用状态的目标服务器集群可以根据分流配置服务器对于目标服务器集群的生效版本的配置,将目标服务器集群的服务程序的生效版本从第一版本切换至第二版本,并且,处于禁用状态的其余服务器集群可以进行服务程序的版本升级,以从第一版本升级至第二版本,且其余服务器集群可以根据分流配置服务器对于其余服务器集群的生效版本的配置,将第二版本切换为有效状态。其中,目标服务器集群的服务程序的生效版本的切换过程,与其余服务器的服务程序的版本升级过程以及生效版本的切换过程,可以同时执行,也可以不同时执行,本技术对此不作限制。
91.参考图7所示的服务器集群a和服务器集群b在第二流量状态下的流量分布图,此时服务器集群a为禁用状态,服务器集群b为启用状态。在该第二流量状态下,客户端通过浏览器访问某个网页时的过程(步骤701-705)与图6所示的过程(步骤601-605)相似,此处不再赘述。在服务器集群a和服务器集群b为第二流量状态下,服务器集群b可以根据分流配置服务器对服务器集群b的生效版本的配置,将服务器集群b的服务程序的生效版本从版本号“20210619010100”对应的第一版本切换至版本号“20210620010100”对应的第二版本。
92.并且,参考图8所示的服务器集群a和服务器集群b在第二流量状态下的流量分布图,在该第二流量状态下,服务器集群a可以进行服务程序的版本升级,在服务器集群a的服务程序从版本号“20210619010100”对应的第一版本升级至版本号“20210620010100”对应的第二版本后,可以根据分流配置服务器对服务器集群a的生效版本的配置,将版本号“20210620010100”对应的第二版本切换为有效状态。
93.在目标服务器集群中的服务程序的生效版本从第一版本切换至第二版本,以及其余服务器集群中的服务程序从第一版本升级至第二版本且其余服务器集群中的服务程序的生效版本为第二版本的情况下,分流配置服务器可以配置多个服务器集群从第二流量状态切换为第三流量状态;其中,第三流量状态下目标服务器集群和其余服务器集群为启用状态。并且,分流配置服务器可以将第三流量状态同步至dns服务器,以使dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
94.参考图9所示的服务器集群a和服务器集群b在第三流量状态下的流量分布图,此时服务器集群a和服务器集群b均为启用状态。在该第三流量状态下,dns服务器会将流量分配至服务器集群a和服务器集群b,此时客户端通过浏览器访问某个网页时的过程(步骤901-905)与图3所示的过程(步骤301-305)相似,此处不再赘述。
95.结合图3-图9所示的服务器集群a和服务器集群b在第一流量状态、第二流量状态和第三流量状态下的流量分布图可知,在服务器集群a和服务器集群b在第一流量状态下,服务器集群a和服务器集群b中仅服务器集群a的第一版本的服务程序提供服务;在服务器集群a和服务器集群b在第二流量状态下,且服务器集群b的服务程序的生效版本为第一版本时,服务器集群a和服务器集群b中仅服务器集群b的第一版本的服务程序提供服务;在服
务器集群a和服务器集群b在第二流量状态下,且服务器集群b的服务程序的生效版本为第二版本时,服务器集群a和服务器集群b中仅服务器集群b的第二版本的服务程序提供服务;在服务器集群a和服务器集群b在第三流量状态下,服务器集群a的第二版本的服务程序以及服务器集群b的第二版本的服务程序提供服务。也就是说,通过本技术实施例提供的服务器集群的流量配置方法,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
96.通过上述分析可知,目标服务器集群可以根据分流配置服务器对目标服务器集群的生效版本的配置,将服务程序的生效版本从第一版本切换至第二版本。相应的,在示例性实施例中,分流配置服务器在配置多个服务器集群从第二流量状态切换为第三流量状态之前,还可以包括以下步骤:
97.配置目标服务器集群中的服务程序的生效版本为第二版本;
98.向目标服务器集群发送第二版本配置消息,以使目标服务器根据第二版本配置消息进行服务程序的生效版本的切换。
99.其中,第二版本配置消息,用于指示目标服务器集群中的服务程序的生效版本为第二版本。
100.另外,其余服务器集群需要根据分流配置服务器对其余服务器集群的生效版本的配置,将服务程序的生效版本切换至第二版本。相应的,分流配置服务器在配置多个服务器集群从第二流量状态切换为第三流量状态之前,还可以包括以下步骤:
101.配置其余服务器集群中的服务程序的生效版本为第二版本;
102.向其余服务器集群发送第三版本配置消息,以使其余服务器根据第三版本配置消息进行服务程序的生效版本的切换。
103.其中,第三版本配置消息,用于指示其余服务器集群中的服务程序的生效版本为第二版本。
104.通过分流配置服务器配置目标服务器集群中的服务程序的生效版本以及其余服务器集群中的服务程序的生效版本,并向目标服务器集群或其余服务器集群发送版本配置消息,使得各服务器集群可以根据分流配置服务器发送的版本配置消息进行服务程序的生效版本的切换。
105.步骤205,将多个服务器集群的流量状态同步至域名系统dns服务器,以使域名系统dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
106.在示例性实施例中,分流配置服务器对多个服务器集群的流量状态每进行一次配置,都可以将多个服务器集群的流量状态同步至dns服务器。比如在配置多个服务器集群为第一流量状态后,可以把第一流量状态同步至dns服务器,以使dns服务器根据更新的第一流量状态将流量分配至其余服务器集群。在配置多个服务器集群为第二流量状态后,可以把第二流量状态同步至dns服务器,以使dns服务器根据更新的第二流量状态将流量分配至目标服务器集群。在配置多个服务器集群为第三流量状态后,可以把第三流量状态同步至dns服务器,以使dns服务器根据更新的第三流量状态将流量分配至目标服务器集群以及其余服务器集群。
107.需要说明的是,由于dns服务器的分层和地域性缓存,分流配置服务器将多个服务
器集群的流量状态同步至dns服务器之后,dns服务器对多个服务器集群的流量分配可能出现延迟,即可能经过一段时间的延迟后多个服务器集群的流量才会达到分流配置服务器同步的流量状态,在多个服务器集群的流量达到分流配置服务器同步的流量状态时,称对多个服务器集群的流量状态同步成功。本技术实施例中,分流配置服务器在将多个服务器集群的流量状态同步至dns服务器后,还可以确定对多个服务器集群的流量状态同步是否成功。即,在步骤205之后,还可以包括以下步骤:
108.分别获取多个服务器集群中监测的流量;
109.根据各服务器集群的流量,确定对多个服务器集群的流量状态同步是否成功。
110.在示例性实施例中,每个服务器集群可以通过其中安装的版本获取组件sdk监测服务器集群的流量,并将监测的所在服务器集群的流量反馈至分流配置服务器,从而分流配置服务器可以获取多个服务器集群中监测的流量,进而根据各服务器集群的流量,确定对多个服务器集群的流量状态同步是否成功。
111.比如,在分流配置服务器将第一流量状态同步至dns服务器之后,可以获取多个服务器集群中监测的流量,在分流配置服务器确定目标服务器集群的流量为0,其余服务器集群的流量不为0时,可以确定第一流量状态同步成功;在分流配置服务器将第二流量状态同步至dns服务器之后,可以获取多个服务器集群中监测的流量,在分流配置服务器确定目标服务器集群的流量不为0,其余服务器集群的流量为0时,可以确定第二流量状态同步成功;在分流配置服务器将第三流量状态同步至dns服务器之后,可以获取多个服务器集群中监测的流量,在分流配置服务器确定目标服务器集群的流量不为0,其余服务器集群的流量不为0时,可以确定第三流量状态同步成功。
112.另外,在本技术一种可能的实现形式中,分流配置服务器可以根据对多个服务器集群采用的服务程序的版本的监测,确定多个服务器集群中目标服务器集群的服务程序已从第一版本升级至第二版本且目标服务器集群的生效版本为第一版本,或者确定目标服务器集群中的服务程序的生效版本从第一版本切换为第二版本、其余服务器集群中的服务程序从第一版本升级至第二版本,且其余服务器集群中的服务程序的生效版本为第二版本。
113.相应的,步骤201具体可以包括:
114.接收多个服务器集群反馈的版本升级消息,其中,版本升级消息用于指示服务器集群已将服务程序从第一版本升级至第二版本;
115.和/或,接收多个服务器集群反馈的版本生效消息,其中,版本生效消息,用于指示服务器集群的服务程序的生效版本。
116.通过接收多个服务器集群反馈的版本升级消息和/或版本生效消息,分流配置服务器可以确定多个服务器集群中的服务程序的版本升级情况以及生效版本情况等服务程序的版本相关情况,从而可以根据多个服务器集群采用的服务程序的版本相关情况,配置多个服务器集群的流量状态。
117.综上,通过本技术提供的服务器集群的流量配置方法,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
118.下面对本技术实施例提供的服务器集群的流量分配方法进行说明。其中,本技术实施例提供的服务器集群的流量分配方法,被配置在dns服务器中执行。
119.图10为本技术实施例所提供的服务器集群的流量分配方法的流程示意图。
120.如图10所示,该服务器集群的流量分配方法可以包括以下步骤1001-1002。
121.步骤1001,接收分流配置服务器所同步的流量状态。
122.其中,分流配置服务器所同步的流量状态,是采用上述第一方面实施例的服务器集群的流量配置方法配置得到的。
123.步骤1002,根据流量状态对多个服务器集群进行流量分配。
124.在示例性实施例中,分流配置服务器可以采用上述实施例所述的服务器集群的流量配置方法,配置多个服务器集群的流量状态,并将多个服务器集群的流量状态同步至dns服务器,从而dns服务器可以接收分流配置服务器所同步的流量状态,进而根据流量状态对多个服务器集群进行流量分配。
125.在示例性实施例中,在分流配置服务器所同步的流量状态为第一流量状态(多个服务器集群中目标服务器集群为禁用状态,其余服务器集群为启用状态)时,dns服务器可以将流量分配至处于启用状态的其余服务器集群;在分流配置服务器所同步的流量状态为第二流量状态(多个服务器集群中目标服务器集群为启用状态,其余服务器集群为禁用状态)时,dns服务器可以将流量分配至处于启用状态的目标服务器集群;在分流配置服务器所同步的流量状态为第三流量状态(多个服务器集群中目标服务器集群和其余服务器集群为启用状态)时,dns服务器可以将流量分配至处于启用状态的目标服务器集群和其余服务器集群。
126.本技术实施例提供的服务器集群的流量分配方法,通过接收分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态,根据流量状态对多个服务器集群进行流量分配,实现了根据分流配置服务器所同步的流量状态对多个服务器集群进行流量分配。
127.下面对本技术实施例提供的服务器集群的服务程序升级方法进行说明。
128.图11为本技术实施例所提供的服务器集群的服务程序升级方法的流程示意图。其中,本技术实施例提供的服务器集群的服务程序升级方法,被配置在服务器集群中执行。
129.如图11所示,本技术实施例所提供的服务器集群的服务程序升级方法,包括以下步骤1101-1102。
130.需要说明的是,本公开实施例中的服务器集群,可以是前述实施例中的多个服务器集群中的任意一个服务器集群。
131.步骤1101,监测dns服务器分配的流量,以确定服务器集群的状态。
132.其中,流量是dns服务器根据分流配置服务器采用第一方面实施例的服务器集群的流量配置方法所同步的流量状态进行分配得到。
133.其中,服务器集群的状态,表示服务器集群是否启用,服务器集群的状态可以包括启用状态和禁用状态。
134.在示例性实施例中,分流配置服务器可以采用上述实施例所述的服务器集群的流量配置方法,配置多个服务器集群的流量状态,并将多个服务器集群的流量状态同步至dns服务器,从而dns服务器可以接收分流配置服务器所同步的流量状态,进而根据流量状态对多个服务器集群进行流量分配。多个服务器集群中的每个服务器集群均可以监测dns服务器分配的流量,以确定服务器集群的状态。
135.在示例性实施例中,针对每个服务器集群,服务器集群中安装有版本获取组件sdk,服务器集群可以通过其中安装的版本获取组件sdk监测服务器集群的流量,进而根据服务器集群的流量,确定服务器集群的状态。其中,在服务器集群的流量为0时,可以确定服务器集群为禁用状态;在服务器集群的流量不为0时,可以确定服务器集群为启用状态。
136.步骤1102,根据服务器集群的状态,进行服务程序的版本升级。
137.在示例性实施例中,在服务器集群的状态为禁用状态的情况下,即可进行服务程序的版本升级,比如从第一版本升级至第二版本,而在服务器集群的状态为启用状态的情况下,不进行服务程序的版本升级。
138.以本技术实施例中的服务器集群为上述实施例中的多个服务器集群中的目标服务器集群的任意一个为例,在多个服务器集群处于第一流量状态下,即目标服务器集群处于禁用状态时,目标服务器集群可以将服务程序从第一版本升级至第二版本。
139.以本技术实施例中的服务器集群为上述实施例中的多个服务器集群中的其余服务器集群的任意一个为例,在多个服务器集群处于第二流量状态下,即其余服务器集群处于禁用状态时,其余服务器集群可以将服务程序从第一版本升级至第二版本。
140.通过服务器集群根据状态进行服务程序的版本升级,可以实现在服务器集群的服务程序不提供服务时,才对服务程序的版本进行升级,从而保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
141.综上,本技术实施例提供的服务器集群的服务程序升级方法,通过监测dns服务器分配的流量,以确定服务器集群的状态,根据服务器集群的状态,进行服务程序的版本升级,实现了对服务器集群的服务程序的版本升级,且避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
142.下面结合图12,对本技术实施例提供的服务器集群的服务程序升级方法进行进一步说明。其中,本技术实施例提供的服务器集群的服务程序升级方法,被配置在服务器集群中执行。
143.图12为本技术实施例所提供的服务器集群的服务程序升级方法的流程示意图。
144.如图12所示,该服务器集群的服务程序升级方法可以包括以下步骤1201-1203。
145.步骤1201,监测dns服务器分配的流量,以确定服务器集群的状态。
146.其中,流量是dns服务器根据分流配置服务器采用第一方面实施例的服务器集群的流量配置方法所同步的流量状态进行分配得到。
147.步骤1202,在服务器集群的状态为禁用状态的情况下,将服务器集群采用的服务程序从第一版本升级至第二版本。
148.其中,步骤1201-1202的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。
149.步骤1203,向分流配置服务器反馈版本升级消息,其中,版本升级消息用于指示服务器集群已将服务程序从第一版本升级至第二版本。
150.在示例性实施例中,服务器集群将服务程序从第一版本升级至第二版本之后,可以向分流配置服务器反馈版本升级消息,以使分流配置服务器可以根据该服务器集群反馈的版本升级消息,确定该服务器集群已将服务程序从第一版本升级至第二版本。
151.可以理解的是,服务器集群的服务程序从第一版本升级至第二版本后,服务程序的生效版本既可以为第一版本,也可以为第二版本。在示例性实施例中,服务器集群可以根据分流配置服务器对服务器集群的服务程序的生效版本的配置,将第一版本切换为生效版本或将第二版本切换为生效版本。相应的,在步骤1202之后,还可以包括:
152.接收分流配置服务器发送的版本配置消息;
153.根据版本配置消息进行服务程序的生效版本的切换。
154.其中,版本配置消息,用于指示服务器集群中的服务程序的具体生效版本。
155.具体的,分流配置服务器可以根据需要配置服务器集群中服务程序的生效版本具体为哪个版本,并向服务器集群发送版本配置消息。相应的,服务器集群可以接收分流配置服务器发送的版本配置消息,进而根据版本配置消息进行服务程序的生效版本的切换。
156.进一步的,服务器集群在根据分流配置服务器对服务器集群的服务程序的生效版本的配置,对服务程序的生效版本进行切换后,还可以向分流配置服务器发送版本生效消息,以使分流配置服务器根据版本生效消息,确定服务器集群的服务程序的生效版本。其中,版本生效消息,用于指示服务器集群的服务程序的当前生效版本。
157.可以理解的是,由于dns服务器的分层和地域性缓存,分流配置服务器将多个服务器集群的流量状态同步至dns服务器之后,dns服务器对多个服务器集群的流量分配可能出现延迟,即可能经过一段时间的延迟后多个服务器集群的流量才会达到分流配置服务器同步的流量状态。本技术实施例中,分流配置服务器可以确定对服务器集群的流量状态同步是否成功。
158.在示例性实施例中,服务器集群可以将监测到的dns服务器分配的流量反馈至分流配置服务器,以使分流配置服务器根据监测到的流量,确定对服务器集群的流量状态同步是否成功。即,在步骤1201中监测dns服务器分配的流量之后,还可以包括:将流量反馈至分流配置服务器,以使分流配置服务器根据流量,确定对服务器集群的流量状态同步是否成功。
159.本技术实施例提供的服务器集群的服务程序升级方法,监测dns服务器分配的流量,以确定服务器集群的状态,在服务器集群的状态为禁用状态的情况下,将服务器集群采用的服务程序从第一版本升级至第二版本,向分流配置服务器反馈版本升级消息,其中,版本升级消息用于指示服务器集群已将服务程序从第一版本升级至第二版本。由此,实现了对服务器集群的服务程序的版本升级,且避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
160.图13为本技术实施例所提供的分流配置服务器的结构示意图。
161.如图13所示,该分流配置服务器1300可以包括:监测模块1310、配置模块1320和同步模块1330。
162.其中,监测模块1310,用于监测多个服务器集群采用的服务程序的版本;
163.配置模块1320,用于根据多个服务器集群采用的服务程序的版本,配置多个服务器集群的流量状态;
164.同步模块1330,用于将多个服务器集群的流量状态同步至域名系统dns服务器,以使域名系统dns服务器根据更新的流量状态对多个服务器集群进行流量分配。
165.进一步地,在本技术实施例的一种可能的实现方式中,配置模块1320,包括:
166.第一配置单元,用于在多个服务器集群中的目标服务器集群的服务程序需要进行版本升级的情况下,配置多个服务器集群为第一流量状态;其中,第一流量状态下目标服务器集群为禁用状态,多个服务器集群中的其余服务器集群为启用状态;
167.第二配置单元,用于在多个服务器集群中处于禁用状态的目标服务器集群的服务程序从第一版本升级至第二版本,且服务程序的生效版本为第一版本的情况下,配置多个服务器集群从第一流量状态切换为第二流量状态;其中,第二流量状态下目标服务器集群为启用状态,其余服务器集群为禁用状态;
168.第三配置单元,用于在目标服务器集群中的服务程序的生效版本从第一版本切换至第二版本,以及其余服务器集群中的服务程序从第一版本升级至第二版本且其余服务器集群中的服务程序的生效版本为第二版本的情况下,配置多个服务器集群从第二流量状态切换为第三流量状态;其中,第三流量状态下目标服务器集群和其余服务器集群为启用状态。
169.进一步地,在本技术实施例的一种可能的实现方式中,配置模块1320,还包括:
170.第四配置单元,用于配置目标服务器集群中的服务程序的生效版本为第一版本;
171.第一发送单元,用于向目标服务器集群发送第一版本配置消息,以使目标服务器根据第一版本配置消息进行服务程序的生效版本的切换。
172.进一步地,在本技术实施例的一种可能的实现方式中,配置模块1320,还包括:
173.第五配置单元,用于配置目标服务器集群中的服务程序的生效版本为第二版本;
174.第二发送单元,用于向目标服务器集群发送第二版本配置消息,以使目标服务器根据第二版本配置消息进行服务程序的生效版本的切换。
175.进一步地,在本技术实施例的一种可能的实现方式中,配置模块1320,还包括:
176.第六配置单元,用于配置其余服务器集群中的服务程序的生效版本为第二版本;
177.第三发送单元,用于向其余服务器集群发送第三版本配置消息,以使其余服务器根据第三版本配置消息进行服务程序的生效版本的切换。
178.进一步地,在本技术实施例的一种可能的实现方式中,监测模块1310,包括:
179.接收单元,用于接收多个服务器集群反馈的版本升级消息,其中,版本升级消息用于指示服务器集群已将服务程序从第一版本升级至第二版本;
180.和/或,接收多个服务器集群反馈的版本生效消息,其中,版本生效消息,用于指示服务器集群的服务程序的生效版本。
181.进一步地,在本技术实施例的一种可能的实现方式中,分流配置服务器,还可以包括:
182.获取模块,用于分别获取多个服务器集群中监测的流量;
183.确定模块,用于根据各服务器集群的流量,确定对多个服务器集群的流量状态同步是否成功。
184.需要说明的是,前述分流配置服务器侧执行的服务器集群的流量配置方法实施例中的解释说明也适用于该实施例的分流配置服务器,此处不再赘述。
185.本技术实施例的分流配置服务器,通过根据多个服务器集群采用的服务程序的版本,对多个服务器集群的流量状态进行配置,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混
用而导致用户端数据错乱的情况发生。
186.为了实现上述实施例,本技术实施例还提供一种dns服务器。图14为本技术实施例所提供的dns服务器的结构示意图。
187.如图14所示,该dns服务器1400可以包括:接收模块1410和分配模块1420。
188.其中,接收模块1410,用于接收分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态;
189.分配模块1420,用于根据流量状态对多个服务器集群进行流量分配。
190.需要说明的是,前述dns服务器侧执行的服务器集群的流量配置方法实施例中的解释说明也适用于该实施例的dns服务器,此处不再赘述。
191.本技术实施例的dns服务器,通过接收分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态,根据流量状态对多个服务器集群进行流量分配,实现了根据分流配置服务器所同步的流量状态对多个服务器集群进行流量分配。
192.为了实现上述实施例,本技术实施例还提供一种服务器集群。图15为本技术实施例所提供的服务器集群的结构示意图。
193.如图15所示,该服务器集群1500可以包括:监测模块1510、升级模块1520。
194.其中,监测模块1510,用于监测dns服务器分配的流量,以确定服务器集群的状态;其中,流量是dns服务器根据分流配置服务器采用第一方面实施例的流量配置方法所同步的流量状态进行分配得到;
195.升级模块1520,用于根据服务器集群的状态,进行服务程序的版本升级。
196.进一步地,在本技术实施例的一种可能的实现方式中,升级模块1520,包括:
197.升级单元,用于在服务器集群的状态为禁用状态的情况下,将服务器集群采用的服务程序从第一版本升级至第二版本。
198.进一步地,在本技术实施例的一种可能的实现方式中,升级模块1520,还包括:
199.第一发送单元,用于向分流配置服务器反馈版本升级消息,其中,版本升级消息用于指示服务器集群已将服务程序从第一版本升级至第二版本。
200.进一步地,在本技术实施例的一种可能的实现方式中,升级模块1520,还包括:
201.接收单元,用于接收分流配置服务器发送的版本配置消息;
202.切换单元,用于根据版本配置消息进行服务程序的生效版本的切换。
203.进一步地,在本技术实施例的一种可能的实现方式中,升级模块,还包括:
204.第二发送单元,用于向分流配置服务器发送版本生效消息,以使分流配置服务器根据版本生效消息,确定服务器集群的服务程序的生效版本。
205.进一步地,在本技术实施例的一种可能的实现方式中,服务器集群1500,还可以包括:
206.发送模块,用于将流量反馈至分流配置服务器,以使分流配置服务器根据流量,确定对服务器集群的流量状态同步是否成功。
207.需要说明的是,前述服务器集群侧执行的服务器集群的流量配置方法实施例中的解释说明也适用于该实施例的服务器集群,此处不再赘述。
208.本技术实施例的服务器集群,通过监测dns服务器分配的流量,以确定服务器集群的状态,根据服务器集群的状态,进行服务程序的版本升级,实现了对服务器集群的服务程
序的版本升级,且避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
209.为了实现上述实施例,本技术还提出一种服务器集群的流量配置系统,包括多个服务器集群、分流配置服务器以及dns服务器。
210.其中,服务器集群,用于执行前述实施例的服务程序升级方法;
211.分流配置服务器,用于执行前述实施例的流量配置方法,以对多个服务器集群的流量状态进行配置;
212.dns服务器,用于执行前述实施例的流量分配方法,以对多个服务器集群进行流量分配。
213.需要说明的是,上述实施例中对服务器集群、分流配置服务器以及dns服务器的说明,也适用于本技术实施例的服务器集群的流量配置系统中的服务器集群、分流配置服务器以及dns服务器,此处不再赘述。
214.进一步的,在本技术实施例的一种可能的实现方式中,服务器集群的流量配置系统,还可以包括客户端。其中,客户端用于根据dns服务器分配的流量,访问对应服务器集群的客户端。
215.进一步的,服务器集群中的服务程序从第一版本升级至第二版本后,为了避免升级后的版本不可用,从而导致进行了服务程序的版本升级的服务器集群不能提供服务,在本技术实施例的一种可能的实现方式中,还可以对服务器集群中的服务程序的版本的可用性进行验证。
216.在本技术实施例的一种可能的实现方式中,可以由客户端通过内网验证多个服务器集群采用的服务程序的版本是否可用。即,客户端还可以用于:验证多个服务器集群采用的服务程序的版本可用。
217.具体的,针对需要验证其中的服务程序版本可用性的服务器集群,可以将该服务器集群中的服务程序的待验证版本切换为有效状态,在客户端访问某个具体网址时,可以通过ip本地映射获取该网址对应的该服务器集群的ip地址,在客户端可以从该服务器集群加载待验证版本的具体内容和服务时,即可确定该服务器集群采用的服务程序的待验证版本可用。
218.需要说明的是,对各服务器集群采用的服务程序的版本可用性的验证过程,是在各服务器集群为禁用状态时进行的。
219.本技术实施例提供的服务器集群的流量配置系统,通过分流配置服务器监测多个服务器集群采用的服务程序的版本,根据多个服务器集群采用的服务程序的版本,配置多个服务器集群的流量状态,并将多个服务器集群的流量状态同步至dns服务器,dns服务器根据分流配置服务器所同步的流量状态对多个服务器集群进行流量配置,各服务器集群监测dns服务器分配的流量,以确定服务器集群的状态,进而根据服务器集群的状态,进行服务程序的版本升级,可以保证多个服务器集群中提供服务的服务程序的版本一致,从而避免了服务器集群采用的服务程序进行版本升级时,因新老版本混用而导致用户端数据错乱的情况发生。
220.为了实现上述实施例,本技术还提出一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处
理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本技术前述任一实施例提出的服务器集群的流量配置方法、服务器集群的流量分配方法或者服务器集群的服务程序升级方法。
221.为了实现上述实施例,本技术还提出一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如本技术前述任一实施例提出的服务器集群的流量配置方法、服务器集群的流量分配方法或者服务器集群的服务程序升级方法。
222.为了实现上述实施例,本技术还提出一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如本技术前述任一实施例提出的服务器集群的流量配置方法、服务器集群的流量分配方法或者服务器集群的服务程序升级方法。
223.图16示出了适于用来实现本技术实施方式的示例性电子设备的框图。图16显示的电子设备1600仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。其中,电子设备可以是分流配置服务器、dns服务器或者服务器集群。
224.如图16所示,电子设备1600以通用计算设备的形式表现。电子设备1600的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
225.总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industry standard architecture;以下简称:isa)总线,微通道体系结构(micro channel architecture;以下简称:mac)总线,增强型isa总线、视频电子标准协会(video electronics standards association;以下简称:vesa)局域总线以及外围组件互连(peripheral component interconnection;以下简称:pci)总线。
226.电子设备1600典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备1600访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
227.存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(random access memory;以下简称:ram)30和/或高速缓存存储器32。电子设备1600可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图16未显示,通常称为“硬盘驱动器”)。尽管图16中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(compact disc read only memory;以下简称:cd-rom)、数字多功能只读光盘(digital video disc read only memory;以下简称:dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本技术各实施例的功能。
228.具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本技术所描述的实施例中的功能和/或方法。
229.电子设备1600也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备1600交互的设备通信,和/或与使得该电子设备1600能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,电子设备1600还可以通过网络适配器20与一个或者多个网络(例如局域网(local area network;以下简称:lan),广域网(wide area network;以下简称:wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备1600的其它模块通信。应当明白,尽管图16中未示出,可以结合电子设备1600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
230.处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
231.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
232.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
233.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
234.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
235.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
236.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
237.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
238.上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

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

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

相关文献