怎样进行nginx部署基于http的负载均衡器

发布时间:2021-11-08 16:54:08 作者:柒染
来源:亿速云 阅读:137

怎样进行nginx部署基于http的负载均衡器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

nginx跨多个应用程序实例的负载平衡是一种用于优化资源利用率,最大化吞吐量,减少延迟和确保容错配置的常用技术。

环境介绍

配置nginx负载均衡器因会用到多台服务器来进行,所以下面我会用到docker,具体docker的使用请移步 docker实战

安装nginx

具体nginx的安装请参考 nginx安装部署

docker安装nginx

配置http负载均衡器

要开始使用NGINX Plus或NGINX开源对一组服务器的HTTP流量进行负载均衡,使用upstream指令定义该组,该指令放置在http上下文中,proxy_pass指令用来转发请求到后端一般指定在loction上下文中
基本配置方法:

http {
    upstream nginx {			#test为组名
        server www.nginx1.com ;		#server用来指定后端服务器的访问地址,一般指定域名、ip、端口,域名和ip二选一,端口可忽略
        server www.nginx2.com weight=5;		#weight指定权重值
        server www.nginx3.com down;			#down用来停止对此服务器的转发
        ......省略其他配置    }
    server{
		location / {
			proxy_pass http://nginx;		#http://nginx为转发那个组的后端服务器
			......省略其他配置		}
		......省略其他配置	}}

nginx做负载均衡官方提供了4种方法,下面逐一介绍这四种方法:

请求在服务器之间平均分配,同时考虑了服务器权重。默认情况下使用此方法(没有启用它的指令)
默认配置就是Round Robin,配置方法:

http {
   upstream nginx {			#test为组名
       server www.nginx1.com ;		#server用来指定后端服务器的访问地址
       server www.nginx2.com ;		#weight指定权重值
       ......省略其他配置   }
   server{
   	location / {
   		proxy_pass http://nginx;		#http://nginx为转发那个组的后端服务器
   		......省略其他配置   	}
   	......省略其他配置   }}

将活动连接最少的请求发送到服务器,也是在考虑到服务器的权重问题才设置的这种方法
配置方法:

http {
   upstream nginx {			#test为组名
   	   less_conn ; 
       server www.nginx1.com ;		#server用来指定后端服务器的访问地址
       server www.nginx2.com ;		#weight指定权重值
       ......省略其他配置   }
   server{
   	location / {
   		proxy_pass http://nginx;		#http:#nginx为转发那个组的后端服务器
   		......省略其他配置   	}
   	......省略其他配置   }}

从客户端IP地址确定向其发送请求的服务器。在这种情况下,可以使用IPv4地址的前三个八位位组或整个IPv6地址来计算哈希值。该方法保证了来自同一地址的请求将到达同一服务器,除非它不可用。
配置方法:

http {
   upstream nginx {			#test为组名
   	   ip_hash ; 
       server www.nginx1.com ;		#server用来指定后端服务器的访问地址
       server www.nginx2.com ;		#weight指定权重值
       ......省略其他配置   }
   server{
   	location / {
   		proxy_pass http://nginx;		#http:#nginx为转发那个组的后端服务器
   		......省略其他配置   	}
   	......省略其他配置   }}

向其发送请求的服务器是根据用户定义的键确定的,该键可以是文本字符串,变量或组合。
配置方法:

http {
  upstream nginx {			#test为组名
  	  hash $request_uri consistent;
      server www.nginx1.com ;		#server用来指定后端服务器的访问地址
      server www.nginx2.com ;		#weight指定权重值
      ......省略其他配置  }
  server{
  	location / {
  		proxy_pass http://nginx;		#http://nginx为转发那个组的后端服务器
  		......省略其他配置  	}
  	......省略其他配置  }}

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

推荐阅读:
  1. 负载均衡器
  2. 怎么样实现nginx在http的负载均衡

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

http nginx

上一篇:怎么掌握PostgreSQL Locks的基础知识

下一篇:PostgreSQL的dump函数有什么作用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》