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

一种基于应用市场架构的负载均衡方法及设备与流程

2022-03-05 10:39:37 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种基于应用市场架构的负载均衡方法及设备。


背景技术:

2.随着时代科技发展的步伐,以服务客户为宗旨,不断更新迭代符合用户的实用的功能需求,与时俱进。经过应用市场的不断发展,使得各个不同功能被日积月累,所有功能都可以融合在一个单体服务中,承载的业务庞大。随着业务用户的访问流量的越来越大,服务器的维护成本也越来越高、无法支持高并发的用户业务访问需求、业务扩展也不够灵活、应用市场的手机端用户体验不好及发生单点故障造成数据流量的损失等。
3.在现有技术中,当前应用市场使用的技术是一台对外服务的高性能web服务器:nginx服务器进行负载均衡,但随着市场需求的不断增加,服务扩展的成本越来越大,市场系统的性能越来越差、每次更新服务需要部署重启的服务也越来越多、业务异常事故风险也越来越高。其中,当前服务存在的不足之处:
4.比如,流量流失可能性大:若发生单点故障易造成数据流量的损失。
5.又比如,业务模块不清晰:当前所有的业务都夹杂在一个应用程序项目里,各个业务模块不能完全独立部署。
6.又比如,部署代价大:服务更新升级部署时是整个市场的所有的业务服务,每次更新都可能存在一定风险,多台服务都操作重启也增加了服务部署的风险值。
7.又比如,服务扩展性差:随着代码的增多,构建和部署的时间也会增加。每次功能的变更或缺陷的修复都会导致需要重新部署整个应用服务。全量部署的方式非常耗时长、影响范围大、风险高,这使得时长项目上线部署的频率较低。
8.又比如,当前支持并发量低:当前该套服务支持高并发量过低。
9.又比如,服务风险高:业务服务版本更新升级服务时,若服务异常即将可能影响整个市场服务瘫痪。


技术实现要素:

10.本技术的一个目的是提供一种基于应用市场架构的负载均衡方法及设备,实现了对业务的负载均衡和业务流量的分发,从而均衡各个网关服务设备及业务服务设备的负载。
11.根据本技术的一个方面,提供了一种基于应用市场架构的负载均衡方法,应用于客户端,其中,所述方法包括:
12.向负载均衡器发送对外服务的业务访问请求,以使所述负载均衡器响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,并将所述业务访问请求转发至所述可用网关服务设备;
13.其中,所述可用网关服务设备对所述业务访问请求中的应用数据进行解析得到业
务标识及业务路由编码后,从集群注册设备获取与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址,并采用轮询法从所述至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址;
14.接收所述负载均衡器返回的业务数据,其中,所述业务数据由所述目标业务服务设备访问所述网络地址对应的目标路由设备服务的业务而获取。
15.进一步地,上述方法中,所述方法还包括:
16.向主域名服务器发送对外服务的业务访问请求,以使所述主域名服务器对所述业务访问请求进行域名解析,以获取对应的对外服务网际互联协议ip;
17.若所述主域名服务器解析失败,则向所述备域名服务器发送对外服务的业务访问请求,以使所述备域名服务器对所述业务访问请求进行域名解析,以获取对应的所述对外服务ip;
18.其中,所述向负载均衡器发送对外服务的业务访问请求,包括:
19.通过所述对外服务ip向负载均衡器发送对外服务的业务访问请求。
20.根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡方法,应用于负载均衡器,其中,所述方法包括:
21.接收客户端发送的对外服务的业务访问请求;
22.响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,并将所述业务访问请求转发至所述可用网关服务设备,以使所述可用网关服务设备对所述业务访问请求中的应用数据进行解析得到业务标识及业务路由编码后,从集群注册设备获取与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址,并采用轮询法从所述至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址;
23.接收所述可用网关服务设备返回的业务数据,其中,所述业务数据由所述目标业务服务设备访问所述网络地址对应的目标路由设备服务的业务而获取;
24.将所述业务数据返回至所述客户端。
25.进一步地,上述方法中,所述响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,包括:
26.响应于所述业务访问请求,采用加权最少连接调度算法,从所述至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备。
27.进一步地,上述方法中,所述方法还包括:
28.增设新的网关服务设备,并为所述新的网关服务设备配置对应的网际互联协议ip、服务端口及所述服务端口所参与的负载的权重值,其中,所述权重值的初始值不为零。
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.计算机可读介质,用于存储一个或多个计算机可读指令,
72.当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述网关服务设备端的基于应用市场架构的负载均衡方法。
73.根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的集群注册设备,其中,该集群注册设备包括:
74.一个或多个处理器;
75.计算机可读介质,用于存储一个或多个计算机可读指令,
76.当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个
或多个处理器实现如上述集群注册设备端的基于应用市场架构的负载均衡方法。
77.根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的业务服务设备,其中,该业务服务设备包括:
78.一个或多个处理器;
79.计算机可读介质,用于存储一个或多个计算机可读指令,
80.当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述业务服务设备端的基于应用市场架构的负载均衡方法。
81.与现有技术相比,本技术构建客户端、均衡负载器、网关服务设备、集群注册设备及业务服务设备的应用市场架构,在客户端向负载均衡器发送对外服务的业务访问请求,以使所述负载均衡器响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,并将所述业务访问请求转发至所述可用网关服务设备;其中,所述可用网关服务设备对所述业务访问请求中的应用数据进行解析得到业务标识及业务路由编码后,从集群注册设备获取与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址,并采用轮询法从所述至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址;所述可用网关服务设备向所述目标业务服务设备发起目标访问请求,所述目标访问请求包括所述目标路由设备的网络地址,以使所述目标业务服务设备访问并返回所述网络地址对应的目标路由设备服务的业务的业务数据;所述可用网关服务设备从所述目标业务服务设备接收所述业务数据并返回至所述负载均衡器,以使所述负载均衡器将所述业务数据返回至客户端。实现了通过均衡负载器将对外服务的业务的数据流量等合理均衡的分配到网关服务设备,并通过及集群注册设备将同一业务的流量数据等均衡地分配到该业务下的目标业务服务设备,实现了对业务的负载均衡和业务流量的分发,从而均衡各个网关服务设备及业务服务设备的负载。
附图说明
82.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显:
83.图1示出根据本技术一个方面的一种基于应用市场架构的负载均衡方法中构建的应用市场架构的结构示意图;
84.图2示出根据本技术一个方面的一种基于应用市场架构的负载均衡方法在实际应用场景中的流程示意图;
85.图3示出根据本技术一个方面的一种基于应用市场架构的负载均衡方法的设备交互示意图;
86.图4示出根据本技术一个方面的一种基于应用市场架构的负载均衡方法中的服务注册示意图;
87.图5示出根据本技术一个方面的一种基于应用市场架构的负载均衡方法中的服务注销示意图;
88.图6示出根据本技术一个方面的一种基于应用市场架构的负载均衡方法中的心跳机制示意图。
89.附图中相同或相似的附图标记代表相同或相似的部件。
service及低老旧java service,app market service为应用市场应用app服务,双台服务器部署;report data service为应用市场应用曝光、点击、下载等数据服务,双台服务器部署;低老旧java service为应用市场低版本的旧业务整体系统,即市场架构重构前的应用市场服务系统,双台服务器部署。
101.本技术实施例中构建的上述应用市场架构是一个分布式系统的,巧用etcd集群服务发现与注册来实现本地服务的负载均衡,没有花费高额成本去购置高性能服务器,而是利用现有设备资源,有效避免服务器单点故障造成数据流量的损失,并且解决数据流量过大、网络负荷过重的问题。本技术实施例构建的应用市场架构的具体工作流程如图2和图3所示,其中,图2为实际应用场景示意图,图3为根据本技术一个方面的一种基于应用市场架构的负载均衡方法的交互流程示意图,该方法包括客户端、弹性负载均衡(比如华为云elb)、网关服务设备(网关api服务)、集群注册设备、业务服务设备及客户端,所述客户端可以是手机客户端,也可以是移动终端,下面描述实施例将客户端优选为手机客户端进行实施例的阐述,其中,所述方法包括步骤s11、步骤s12、步骤s13、步骤s14、步骤s15、步骤s21、步骤s22、步骤s23、步骤s24、步骤s31、步骤s32及步骤s33,具体包括如下步骤:
102.步骤s11,所述客户端向负载均衡器发送对外服务的业务访问请求。
103.步骤s21,所述负载均衡器接收客户端发送的对外服务的业务访问请求。
104.步骤s22,所述负载均衡器响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,并将所述业务访问请求转发至所述可用网关服务设备。
105.在此,当客户端访问市场,由负载均衡器elb均衡地选择一个可用网关服务设备,使得所述可用网关服务设备根据不同的路由信息来判断该业务访问请求是来自哪一不同的市场版本类型,实现各个不同版本的应用市场的各自负载均衡,具体实现代码如下:
106.g.post("/",httphand.decodereqm(),market.marketapi)
107.g.post("/ls",httphand.decodereqmls(),market.marketapils)
108.g.post("/hd",httphand.decodereqmhd(),market.marketapihd)。
109.步骤s31,所述可用网关服务设备接收所述负载均衡器发送的对外服务的业务访问请求。
110.步骤s32,所述可用网关服务设备对所述业务访问请求中的应用数据进行解析,得到业务标识及业务路由编码。
111.步骤s33,所述可用网关服务设备将所述业务标识及业务路由编码发送至集群注册设备,以使所述集群注册设备根据所述业务路由编码确定并返回与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址;
112.步骤s41,集群注册设备记录所有的业务服务设备及其对应的路由设备的网络地址;
113.步骤s42,集群注册设备接收可用网关服务设备发送的业务标识及业务路由编码;其中,所述业务标识及业务路由编码由所述可用网关服务设备对接收的所述负载均衡器发送的对外服务的业务访问请求中的应用数据进行解析而得到;
114.步骤s43,集群注册设备根据所述业务路由编码从所述所有的业务服务设备中确定出与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址;
例如,所述可用网关服务连接至集群注册设备:etcd注册中心,并经过对请求数据的解密分析得到业务标识及其对应的业务路由编码,并将业务标识及业务路由编码发送至集群注册设备;使得集群注册设备根据业务路由编码查询集群注册设备:etcd注册中心存储的对应可用的且与所述业务标识对应的一个或多个api业务服务的内网服务器的ip列表及路由设备的网络地址等。
115.步骤s44,集群注册设备将与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址发送给所述可用网关服务设备,以使所述可用网关服务设备采用轮询法从所述至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址,并向所述目标业务服务设备发起目标访问请求,所述目标访问请求包括所述目标路由设备的网络地址;其中,所述目标业务服务设备访问并返回所述网络地址对应的目标路由设备服务的业务的业务数据至所述可用网关服务设备;
116.步骤s34,所述可用网关服务设备接收所述集群注册设备返回的、与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址;
117.步骤s35,所述可用网关服务设备采用轮询法从所述至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址;例如,所述可用网关服务设备采用随机的轮询法对从集群注册设备获取到的至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址,具体实现代码如下:
[0118][0119]
步骤s36,所述可用网关服务设备向所述目标业务服务设备发起目标访问请求,所述目标访问请求包括所述目标路由设备的网络地址,以使所述目标业务服务设备访问并返回所述网络地址对应的目标路由设备服务的业务的业务数据;
[0120]
所述步骤s51,所述目标业务服务设备接收可用网关服务设备发送的目标访问请求,所述目标访问请求包括目标路由设备的网络地址;所述目标路由设备的网络地址由所述可用网关服务设备采用轮询法从集群注册设备处接收的、与业务标识对应的至少一个可用业务服务设备中筛选出的一个目标业务服务设备而确定;
[0121]
所述步骤s52,所述目标业务服务设备访问并获取所述网络地址对应的目标路由设备服务的业务的业务数据;在此,所述业务服务设备通过超文本传输协议https访问获取所述网络地址对应的目标路由设备服务的业务的业务数据,由于只有支持https访问的服务都可以做独立的业务服务,业务服务的开发语言完全不受架构服务的限制,因此可以根据业务和相关人员的实际情况巧用现有的资源,快捷高效地扩展业务,具体获取业务数据
的实现代码如下:
[0122][0123]
所述步骤s53,所述目标业务服务设备将所述业务数据返回至所述可用网关服务设备,以使所述可用网关服务设备将所述业务数据发送至均衡负载器,所述均衡负载器将所述业务数据返回至客户端。
[0124]
步骤s37,所述可用网关服务设备从所述目标业务服务设备接收所述业务数据并返回至负载均衡器,以使所述负载均衡器将所述业务数据返回至客户端;
[0125]
步骤s23,所述负载均衡器接收所述可用网关服务设备返回的业务数据,其中,所述业务数据由所述目标业务服务设备访问所述网络地址对应的目标路由设备服务的业务而获取;
[0126]
步骤s24,所述负载均衡器将所述业务数据返回至所述客户端。
[0127]
步骤s12,所述客户端接收所述负载均衡器返回的业务数据,其中,所述业务数据由所述目标业务服务设备访问所述网络地址对应的目标路由设备服务的业务而获取。
[0128]
通过上述步骤s11至步骤s12、步骤s21至步骤s24、步骤s31至步骤s37、步骤s41至步骤s44及步骤s51至步骤s53,实现了通过均衡负载器将对外服务的业务的数据流量等合理均衡的分配到网关服务设备,并通过及集群注册设备将同一业务的流量数据等均衡地分配到该业务下的目标业务服务设备,实现了对业务的负载均衡和业务流量的分发,从而均衡各个网关服务设备及业务服务设备的负载。
[0129]
通过本技术实施例中提供的基于应用市场架构进行的负载均衡方法中,构建的服务系统架构由nginx 单体架构改用负载均衡器elb gin框架 etcd集群 分布式的服务框架,不仅可以根据业务模块拆分成多个完全独立的服务项目,使得不同类型的业务对应不同的业务服务设备;对外服务采用负载均衡器能够均衡业务的数据流量,且在可以网关服务设备中使用轮询调度法将同一业务对应的访问请求进行负载均衡分发应用流量至不同的业务服务设备。在本技术实施例中,通过负载均衡器实现了网关服务的负载均衡,随着应用流量的访问增大,不需改变现有网络结构、停止现有服务,仅需要在网关服务设备的服务群中简单地添加一台新的网关服务设备,即可灵活加服扩容,提高应对对外服务的能力。本
申请的实施例中还巧妙地利用集群注册设备:etcd注册中心的注册实现每个业务对应的多台业务服务设备restapi业务服务之间的本地负载均衡,只需利用现有设备资源,就可有效地避免服务器单点故障造成数据流量的损失,通常用来解决数据流量过大、网络负荷过重的问题;同时它拥有形式多样的均衡策略把数据流量合理均衡的分配到各台服务器;如果需要在现在服务器上升级扩充,不需改变现有网络结构、停止现有服务,仅需要在网关服务设备的服务群中简单地添加一台新的网关服务设备即可。
[0130]
接着本技术的上述实施例,本技术一个方面的一种客户端的基于应用市场架构的负载均衡方法还包括:
[0131]
向主域名服务器发送对外服务的业务访问请求,以使所述主域名服务器对所述业务访问请求进行域名解析,以获取对应的对外服务网际互联协议ip,在此,所述主域名服务器可以通过域名系统(domain name system,dns)对所述业务访问请求进行域名解析;若所述主域名服务器解析失败,则启用备用域名服务器,并向所述备域名服务器发送对外服务的业务访问请求,以使所述备域名服务器通过域名系统对所述业务访问请求进行域名解析,以获取对应的所述对外服务ip;其中,所述向负载均衡器发送对外服务的业务访问请求,具体可通过所述对外服务ip向负载均衡器发送对外服务的业务访问请求,实现通过负载均衡器来满足业务对外服务。
[0132]
在此,域名服务器采用主域名服务器和备域名服务器,使得在本技术的实施例中,若主域名服务器访问不通,则可以切换到备用的备域名服务器进行访问,从而在一定程度上解决因域名系统dns解析失败而影响用户正常访问业务问题。
[0133]
接着本技术的上述实施例,所述步骤s22响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,具体包括:所述负载均衡器响应于所述业务访问请求,采用加权最少连接调度算法,从所述至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备。例如,外网服务ip可以通过负载均衡器elb发送对外服务的业务访问请求,并通过负载均衡器的加权的最少连接调度算法,一个或多个网关服务设备中负载均衡的筛选出一个可用网关服务设备,其中,加权的最少连接调度算法是每个服务节点可以用相应的权值表示该服务节点的处理能力,而系统管理员可以动态的设置相应的权值,缺省权值为1,加权最少连接调度在分配新连接请求时,尽可能使服务节点的已建立连接数和其权值成正比。同时,还可以通过后台配置域名走负载均衡器elb映射到网际互联协议ip、服务端口及所述服务端口所参与的负载的权重值,若配置某云服务ip的权重值为0,则该云服务ip不参与对外运营服务,实现了通过改变权重值,可以在不影响任何现有的客户端访问使用的情况下直接设置权重值为0来缩减或升级服务。
[0134]
接着本技术的上述实施例,本技术一个方面的一种负载均衡器端的基于应用市场架构的负载均衡方法还包括:
[0135]
增设新的网关服务设备,并为所述新的网关服务设备配置对应的网际互联协议ip、服务端口及所述服务端口所参与的负载的权重值,其中,所述权重值的初始值不为零。
[0136]
例如,若业务流量大增、需要扩容,则增加部署新的网关服务设备,以通过增设的新的网关服务设备来运行新的网关服务,并在负载均衡器elb后台为所述新的网关服务设备配置对应的网际互联协议ip和服务端口及所述服务端口所参与的负载的权重值,当然,所述新的网关服务设备的权重值的初始值不为零,以便运行进行新的网关服务,使得无需
改变现有网络结构,通过直接新增设备资源服务即可灵活扩展服务应用的对外服务能力,从而达到扩容对外服务的能力。
[0137]
接着本技术的上述实施例,本技术一个方面的一种负载均衡器端的基于应用市场架构的负载均衡方法还包括:
[0138]
对所有的网关服务设备中的一个或多个所述网关服务设备的权重值进行更改。例如,若业务繁忙时,可以为所有的网关服务设备中的多个网关服务设备的权重值进行增加处理,以便权重值增加后的网关服务设备能够进行负载的分担;若业务空闲,则可以对所有的网关服务设备中的一个或多个网关服务设备的权重值进行减少处理,使得更少的网关服务设备来参与业务的服务;若存在某一服务的禁止运行(比如升级服务)时,则可以对禁止运行的服务对应的网关服务设备的权重值进行置0处理,实现了通过负载均衡的需求来更改所有的网关服务设备中的一个或多个所述网关服务设备的权重值。
[0139]
接着本技术的上述实施例,本技术一个方面的一种业务服务设备端的基于应用市场架构的负载均衡方法还包括:
[0140]
将业务服务设备及其对应的路由设备的网络地址上传至所述集群注册设备。如图4所示,所述业务服务设备启动业务服务,并与所述集群注册设备etcd建立链接,即所述业务服务设备链接至所述集群注册设备etcd,即注册中心,并遍历所述业务服务设备及其对应的路由,将所述业务服务设备(对应服务器ip)及其对应的路由设备的网络地址一起上传至所述集群注册设备etcd,使得集群注册设备能够记录所有的业务服务设备及其对应的路由设备的网络地址,实现了对所有的业务服务对应的业务服务设备的注册和上传。
[0141]
接着本技术的上述实施例,本技术一个方面的一种基于应用市场架构的负载均衡方法还包括:
[0142]
所述业务服务设备向所述集群注册设备发送注销请求,所述注销请求包括待注销的业务服务设备及其路由设备的网络地址,以使所述集群注册设备删除所述待注销的业务服务设备及其路由设备的网络地址;
[0143]
所述集群注册设备接收待注销的业务服务设备发送的注销请求,所述注销请求包括所述待注销的业务服务设备及其路由设备的网络地址,并将所述待注销的业务服务设备及其路由设备的网络地址从本地记录中删除。
[0144]
如图5所示,当业务服务需要重启时,调用业务服务提供的内部暂停服务接口,并通过所述内部暂停服务向向集群注册设备etcd发送注销请求,所述注销请求包括待注销的业务服务设备及其路由设备的网络地址,以使所述集群注册设备etcd暂停删除待注销的业务服务设备及其路由设备的网络地址。网关服务受到业务服务注册信息的变更会及时删除暂停业务服务器的信息。其中,所述网关服务设备则不会再向外部请求提供此暂停的业务服务,由于与弹性伸缩服务无缝集成,根据业务流量自动扩展负载分发,可以保证业务灵活可用。直到暂停业务对应的该网关服务设备被重新启动并把路由设备的网络地址等路由信息注册到集群注册设备etcd集群中,使得对应的业务服务设备才会再次开启对外提供服务,具体实现代码如下所示:
[0145][0146]
接着本技术的上述实施例,本技术一个方面的一种基于应用市场架构的负载均衡方法还包括:
[0147]
所述集群注册设备周期性地向所述所有的业务服务设备中的每个业务服务设备发送心跳包,并在预设时间段内接收所述所有的业务服务设备中的一个或多个业务服务设备返回的心跳响应,或,在超出所述预设时间段后,将所述所有的业务服务设备中、未返回心跳响应的业务服务设备及其对应的路由设备的网络地址从本地记录中删除;
[0148]
所述业务服务设备接收所述集群注册设备发送的心跳包,并在预设时间段内向所述集群注册设备返回心跳响应。
[0149]
如图6所示,所述集群注册设备(对应图6中的etcd注册中心)周期性地向所述所有的业务服务设备中的每个业务服务设备发送心跳包,使得各所述业务服务设备接收所述集群注册设备发送的心跳包,并在预设时间段内向所述集群注册设备返回心跳响应,以便所述集群注册设备在预设时间段内接收所述所有的业务服务设备中的一个或多个业务服务设备返回的心跳响应,以便通过集群注册设备定时发送心跳包的形式,达到及时保障集群注册设备中的业务服务都是可用的业务服务设备,同时,也可以达到监控业务服务的健康状态。或者,所述集群注册设备在超出所述预设时间段后,将所述所有的业务服务设备中、未返回心跳响应的业务服务设备及其对应的路由设备的网络地址从本地记录中删除,实现对没有进行业务服务的业务服务设备进行删除处理,也节省存储资源。
[0150]
比如,每台网关业务服务设备api服务通过集群注册设备etcd的监控线程invoke(及时发现任何有变更的节点的业务服务设备restapi的配置信息。与当前服务系统保存的节点信息配置做匹配,使得通过实时监控服务监控状态,从而确保集群注册设备etcd中记录的业务服务设备的可用性,弹性伸缩本地内部业务无缝集成,从而达到自动扩展的目的;若有新节点配置则新增插入系统内存节点信息配置里,从而实现了自动扩展负载;若检测到的节点对应的业务服务设备的信息配置不一致,则更新系统内记录的业务服务设备的节点信息配置;若检测需要删除注销该业务服务设备的节点,则直接从服务系统内存中移除此节点信息配置,具体实现代码如下:
[0151][0152][0153]
通过本技术的上述实施例,使得访问市场的业务服务设备的api请求速度优化良好,平均响应时间都在60ms之内,与现有技术中的老服务器相比,提升10倍~40倍;本技术所采用的新的应用市场架构性能强悍且高并发量提升千倍以上,满足用户的海量业务访问需求;各个业务服务设备对应的业务模块独立,异常故障时影响范围最小化;易于灵活拓展新的业务服务设备以提供新的业务服务,从而实现海量业务的扩容;服务高可用,支持双活容灾,无缝实时切换。
[0154]
根据本技术的另一方面,还提供了一种非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,使所述处理器实现如上述基于应用市场架构的负载均衡方法。
[0155]
根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的客户端,其中,该客户端包括:
[0156]
一个或多个处理器;
[0157]
计算机可读介质,用于存储一个或多个计算机可读指令,
[0158]
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述客户端的基于应用市场架构的负载均衡方法。
[0159]
在此,所述基于应用市场架构的负载均衡的客户端中的各实施例的详细内容,具体可参见上述客户端的基于应用市场架构的负载均衡方法的实施例的对应部分,在此,不再赘述。
[0160]
根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的负载均衡
器,其中,该负载均衡器包括:
[0161]
一个或多个处理器;
[0162]
计算机可读介质,用于存储一个或多个计算机可读指令,
[0163]
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述负载均衡器的基于应用市场架构的负载均衡方法。
[0164]
在此,所述基于应用市场架构的负载均衡的负载均衡器中的各实施例的详细内容,具体可参见上述负载均衡器的基于应用市场架构的负载均衡方法的实施例的对应部分,在此,不再赘述。
[0165]
根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的网关服务设备,其中,该网关服务设备包括:
[0166]
一个或多个处理器;
[0167]
计算机可读介质,用于存储一个或多个计算机可读指令,
[0168]
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述网关服务设备端的基于应用市场架构的负载均衡方法。
[0169]
在此,所述基于应用市场架构的负载均衡的网关服务设备中的各实施例的详细内容,具体可参见上述网关服务设备端的基于应用市场架构的负载均衡方法的实施例的对应部分,在此,不再赘述。
[0170]
根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的集群注册设备,其中,该集群注册设备包括:
[0171]
一个或多个处理器;
[0172]
计算机可读介质,用于存储一个或多个计算机可读指令,
[0173]
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述集群注册设备端的基于应用市场架构的负载均衡方法。
[0174]
在此,所述基于应用市场架构的负载均衡的集群注册设备中的各实施例的详细内容,具体可参见上述集群注册设备端的基于应用市场架构的负载均衡方法的实施例的对应部分,在此,不再赘述。
[0175]
根据本技术的另一方面,还提供了一种基于应用市场架构的负载均衡的业务服务设备,其中,该业务服务设备包括:
[0176]
一个或多个处理器;
[0177]
计算机可读介质,用于存储一个或多个计算机可读指令,
[0178]
当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述业务服务设备端的基于应用市场架构的负载均衡方法。
[0179]
在此,所述基于应用市场架构的负载均衡的业务服务设备中的各实施例的详细内容,具体可参见上述业务服务设备端的基于应用市场架构的负载均衡方法的实施例的对应部分,在此,不再赘述。
[0180]
综上所述,本技术构建客户端、均衡负载器、网关服务设备、集群注册设备及业务服务设备的应用市场架构,在客户端向负载均衡器发送对外服务的业务访问请求,以使所述负载均衡器响应于所述业务访问请求,从至少一个网关服务设备中负载均衡的筛选一个可用网关服务设备,并将所述业务访问请求转发至所述可用网关服务设备;其中,所述可用
网关服务设备对所述业务访问请求中的应用数据进行解析得到业务标识及业务路由编码后,从集群注册设备获取与所述业务标识对应的至少一个可用业务服务设备及其对应的路由设备的网络地址,并采用轮询法从所述至少一个可用业务服务设备中筛选出一个目标业务服务设备及其对应的目标路由设备的网络地址;所述可用网关服务设备向所述目标业务服务设备发起目标访问请求,所述目标访问请求包括所述目标路由设备的网络地址,以使所述目标业务服务设备访问并返回所述网络地址对应的目标路由设备服务的业务的业务数据;所述可用网关服务设备从所述目标业务服务设备接收所述业务数据并返回至所述负载均衡器,以使所述负载均衡器将所述业务数据返回至客户端。实现了通过均衡负载器将对外服务的业务的数据流量等合理均衡的分配到网关服务设备,并通过及集群注册设备将同一业务的流量数据等均衡地分配到该业务下的目标业务服务设备,实现了对业务的负载均衡和业务流量的分发,从而均衡各个网关服务设备及业务服务设备的负载。
[0181]
需要注意的是,本技术可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(asic)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本技术的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本技术的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,ram存储器,磁或光驱动器或软磁盘及类似设备。另外,本技术的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
[0182]
另外,本技术的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本技术的方法和/或技术方案。而调用本技术的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本技术的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本技术的多个实施例的方法和/或技术方案。
[0183]
对于本领域技术人员而言,显然本技术不限于上述示范性实施例的细节,而且在不背离本技术的精神或基本特征的情况下,能够以其他的具体形式实现本技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本技术内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
再多了解一些

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

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

相关文献