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

Raizel ·
更新时间:2024-09-20
· 318 次阅读

目录

Nginx负载均衡概念

upstream模块的使用方法

upstream模块说明

http_proxy_module模块

完整的案例

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模块的使用方法

基本的配置案例

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; } 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_pass http://www_server_pools; } 完整的案例 worker_processes1; events { worker_connections1024; } http { includemine.types; default_typeapp/octet-stream; sendfileon; keepalive_timeout65; 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反向代理与负载均衡概念模块的详细内容,更多关于Nginx反向代理与负载均衡概念的资料请关注软件开发网其它相关文章!



模块 代理 nginx反向代理 负载均衡 Nginx

需要 登录 后方可回复, 如果你还没有账号请 注册新账号