jianxing 2019-11-17
静态资源访问 存放在nginx的html页面
server { listen 80; server_name my.tmp.com; location / { root data/tmp1; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 80; server_name you.tmp.com; location / { root data/tmp2; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
server { listen 8080; server_name 8080.tmp.com; location / { root data/tmp1; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } server { listen 8081; server_name 8081.tmp.com; location / { root data/tmp2; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
反向代理的好处隐藏真实内部ip地址,请求先访问nginx代理服务器(外网可以访问到),在使用nginx服务器转发到真实服务器中。
server { listen 80; server_name proxy.tmp.com; location / { proxy_pass http://127.0.0.1:8090; index index.html index.htm; } }
Upstream Server 中文翻译 上游服务器,意思就是负载均衡服务器设置,白话文表示(就是被nginx代理最后真实访问的服务器)
负载均衡算法:配置多个上游服务器(真实业务逻辑访问的服务器)的负载均衡机制
失败重试机制:当上游服务器(真实业务逻辑访问的服务器)出现超时或者服务器不存活,是否考虑重试机制(补偿机制)
服务器心跳检测: 当上游服务器(真实业务逻辑访问的服务器),监控检测|心跳检测
Nginx负载均衡提供上游服务器(真实业务逻辑访问的服务器),负载均衡、故障转移、失败重试、容错、健康检查等。
当上游服务器(真实业务逻辑访问的服务器)发生故障时,可以转移到其他上游服务器(真实业务逻辑访问的服务器)。
upstream backServer{ server 127.0.0.1:8090; server 127.0.0.1:8091; } server { listen 80; server_name proxy.tmp.com; location / { proxy_pass http://backServer; index index.html index.htm; } } }
weight(轮询权值)
weight的值越大分配到的访问概率越高,主要用于后端每台服务器性能不均衡的情况下。或者仅仅为在主从的情况下设置不同的权值,达到合理有效的地利用主机资源。
upstream backServer{ server 127.0.0.1:8080 weight=1; server 127.0.0.1:8081 weight=2; }
ip_hash
每个请求按访问IP的哈希结果分配,使来自同一个IP的访客固定访问一台后端服务器,并且可以有效解决动态网页存在的session共享问题。俗称IP绑定。
upstream backServer{
server 127.0.0.1:8080 ; server 127.0.0.1:8081 ; ip_hash; }
server { listen 80; server_name www.tmp.com; location / { ### 指定上游服务器负载均衡服务器 proxy_pass http://backServer; ###nginx与上游服务器(真实访问的服务器)超时时间 后端服务器连接的超时时间_发起握手等候响应超时时间 proxy_connect_timeout 1s; ###nginx发送给上游服务器(真实访问的服务器)超时时间 proxy_send_timeout 1s; ### nginx接受上游服务器(真实访问的服务器)超时时间 proxy_read_timeout 1s; index index.html index.htm; } }