Nginx反向代理与负载均衡概念及upstream模块如何使用

Nginx反向代理与负载均衡概念及upstream模块如何使用

本篇内容主要讲解“Nginx反向代理与负载均衡概念及upstream模块如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx反向代理与负载均衡概念及upstream模块如何使用”吧!

Nginx负载均衡概念

准确来说,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模块的使用方法

基本的配置案例

upstreamwww_server_pools{server192.168.1.1;server192.168.1.2;server192.168.1.3;}

较完整的配置案例

upstreamwww_server_pools{server192.168.1.1:80weight=1;server192.168.1.2:80weight=2;server192.168.1.3:80weight=2max_fails=1dail_timeout=10s;}

使用域名的配置案例

upstreambackend{serverbackend1.yyang.comweight=3;serverbackend2.yyang.com:8080;serverunix:/tmp/backend3;}

upstream模块说明

  • server 192.168.1.1:80 #可以是ip也可以是域名

  • weight=1 #权重值,默认为1,数越大接受的请求比例越大

  • max_fails=1 #尝试连接后端主机失败的次数

  • backup #热备配置

  • fail_timeout=10s #距离下次检查的时间

http_proxy_module模块

proxy_pass指令

通过location将符合匹配的请求抛给定义好的upstream节点池。

proxy_pass案例

location/{proxy_passhttp://www_server_pools;}

完整的案例

worker_processes1;events{worker_connections1024;}http{includemine.types;default_typeapp/octet-stream;sendfileon;keepalive_timeout65;upstreamwww_server_pools{server192.168.1.1:80weight=1;server192.168.1.2:80weight=1;server192.168.1.3:80weight=1;}server{listen80;server_namewww.yyang.com;location/{proxy_passhttp://www_server_pools;}}}

到此,相信大家对“Nginx反向代理与负载均衡概念及upstream模块如何使用”有了更深的了解,不妨来实际操作一番吧!这里是恰卡编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

发布于 2022-03-19 21:09:44
收藏
分享
海报
0 条评论
33
上一篇:Python怎么实现Excel文件的合并 下一篇:vue项目中如何封装echarts
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码