Nginx的反向代理 负载均衡 动静分离 高可用 配置
在ubuntu下安装Nginx:
sudo apt install nginx
nginx的配置文件有两个:
/etc/nginx/nginx.conf /etc/nginx/sites-enabled/default
在server块中增加配置,设置反向代理:
server{
listen 9001;
server_name 127.0.0.1;
location ~ /edu/ {
proxy_pass http://127.0.0.1:8080;
}
location ~ /vod/ {
proxy_pass http://127.0.0.1:8081;
}
}
增加server块,设置负载均衡:
server{
listen 9002;
server_name 127.0.0.1;
location / {
proxy_pass http://myserver;
}
}
其中的myserver是在http块中增加的配置:
upstream myserver{
server 127.0.0.1:8080 weight=10;
server 127.0.0.1:8081 weight=5;
}
其中,weight是权重,默认为1,权重越大,分配到的客户端就越多。
weight权重分配是一种方法,还有其他分配方法。
ip_hash
upstream myserver{
ip_hash;
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
每个请求按照访问ip的hash结果分配,这样每个访客固定访问一个后端服务器。可以解决session的问题。
但是相应带来的问题就是:如果这台服务器挂了,那么这台服务器上面保存的所有的session全部丢失。
fair
upstream myserver{
fair;
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
按后端服务器的响应时间来分配请求,响应时间短的优先分配
注意:在1.3版本之后,可以同时使用ip_hash和weight
动静分离配置:
在default中的server块中增加location块
location /a/ {
root /data/;
}
location /image/ {
root /data/;
autoindex on;
}
其中,autoindex的作用是显示访问目录
有时候会无法生效,可能是缓存原因,建议强制刷新。
---------------------
高可用以后有空再写
金麟岂是池中物,一遇风云便化龙!

浙公网安备 33010602011771号