[发明专利]基于Consul实现OpenResty动态负载均衡的方法在审
申请号: | 201911127937.4 | 申请日: | 2019-11-18 |
公开(公告)号: | CN110855787A | 公开(公告)日: | 2020-02-28 |
发明(设计)人: | 程永新;孙玉颖;刘洋 | 申请(专利权)人: | 上海新炬网络技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/50 |
代理公司: | 上海科律专利代理事务所(特殊普通合伙) 31290 | 代理人: | 袁亚军 |
地址: | 201707 上海市青浦区外青*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 consul 实现 openresty 动态 负载 均衡 方法 | ||
1.一种基于Consul实现OpenResty动态负载均衡的方法,其特征在于,包括如下步骤:
S1)当有服务器启动时,通过Consul中心接受该服务器的注册信息,并通过Consul接口调用获取该服务器ip;
S2)当有服务器关闭时,通过Consul中心接受该服务器的关闭信息,并通过Consul接口调用从服务器ip列表中将其剔除;
S3)将Consul获取的ip列表传递给Openresty配置的upstream模板中;
S4)在Nginx中通过server指令指定后端服务器的IP地址和端口实现HTTP负载均衡,所述后端服务器的IP地址来自Nginx配置的upsream列表,所述upsream列表从Openresty的模板中动态获取。
2.如权利要求1所述的基于Consul实现OpenResty动态负载均衡的方法,其特征在于,所述Openresty或Nginx为不同的后端服务器指定轮询权值,每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某台服务器宕机,则故障系统被自动剔除;轮询权值越大,则分配到的访问机率越高。
3.如权利要求1所述的基于Consul实现OpenResty动态负载均衡的方法,其特征在于,所述Openresty或Nginx将每个请求按访问IP的hash结果分配,来自同一个IP的请求固定访问同一个后端服务器。
4.如权利要求1所述的基于Consul实现OpenResty动态负载均衡的方法,其特征在于,还包括安装Nginx的hash软件包,所述Openresty或Nginx按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器。
5.如权利要求1所述的基于Consul实现OpenResty动态负载均衡的方法,其特征在于,还包括安装Nginx的upstream_fair模块,所述Openresty或Nginx根据后端服务器的响应时间来分配请求,响应时间短的优先分配。
6.如权利要求1所述的基于Consul实现OpenResty动态负载均衡的方法,其特征在于,还包括设置一个数组进行记录后端服务器的连接数,所述Openresty或Nginx每次选择当前连接数最少的一个后端服务器作为当前分配到的后端服务器,并将该后端服务器的连接数加1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海新炬网络技术有限公司,未经上海新炬网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911127937.4/1.html,转载请声明来源钻瓜专利网。