本篇内容主要讲解“Nginx反向代理与负载均衡概念及upstream模块如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx反向代理与负载均衡概念及upstream模块如何使用”吧!
准确来说,Nginx是作为Nginx Proxy反向代理使用的,因为这个反向代理功能表现出负载均衡的效果,所以称之为Nginx负载均衡。
实现负载均衡的效果主要依赖两个组件:
ngx_http_proxy_module
ngx_http_upstream_module
前者是proxy代理模块,用于把请求传给服务器节点或upstream服务器池
后者是负载均衡模块,可以实现网站的负载均衡功能及节点的健康检查
upstream模块
Nginx负载均衡功能依赖ngx_http_upstream_module模块,支持的代理方式包括proxy_pass、fastcgi_pass、memcached_pass等;允许Nginx定义一组或多组节点服务器组,使用proxy代理方式把网站请求发送到事先定义好的upstream组。
基本的配置案例
upstream www_server_pools { server 192.168.1.1; server 192.168.1.2; server 192.168.1.3; }
较完整的配置案例
upstream www_server_pools { server 192.168.1.1:80 weight=1; server 192.168.1.2:80 weight=2; server 192.168.1.3:80 weight=2 max_fails=1 dail_timeout=10s; }
使用域名的配置案例
upstream backend { server backend1.yyang.com weight=3; server backend2.yyang.com:8080; server unix:/tmp/backend3; }
server 192.168.1.1:80 #可以是ip也可以是域名
weight=1 #权重值,默认为1,数越大接受的请求比例越大
max_fails=1 #尝试连接后端主机失败的次数
backup #热备配置
fail_timeout=10s #距离下次检查的时间
proxy_pass指令
通过location将符合匹配的请求抛给定义好的upstream节点池。
proxy_pass案例
location / { proxy_pass http://www_server_pools; }
worker_processes 1; events { worker_connections 1024; } http { include mine.types; default_type app/octet-stream; sendfile on; keepalive_timeout 65; upstream www_server_pools { server 192.168.1.1:80 weight=1; server 192.168.1.2:80 weight=1; server 192.168.1.3:80 weight=1; } server { listen 80; server_name www.yyang.com; location / { proxy_pass http://www_server_pools; } } }
到此,相信大家对“Nginx反向代理与负载均衡概念及upstream模块如何使用”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。