Nginx简单的请求分发跟负载均衡

1.安装不同域名来进行分发

//两个server同时监听80端口,按照请求的域名进行分发,实例配置如下:
server { 
  listen       80; 
  server_name  a.test.com; 
  location / { 
    proxy_pass http://localhost:8080; 
    proxy_set_header   Host    $host; 
    proxy_set_header   X-Real-IP   $remote_addr; 
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for; 
    } 
} 

server { 
  listen       80; 
  server_name  b.test.com; 
  location / { 
    proxy_pass http://localhost:8081; 
    proxy_set_header   Host    $host; 
    proxy_set_header   X-Real-IP   $remote_addr; 
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 
    } 
}         

 

2.按照路径进行分发

//简单的按照路径分发,nginx支持正则匹配以及lua插件等分发规则 
//如果 proxy_pass转发的连接以/号结尾 则/model_two/aaa 将被转发为http://localhost:8081/aaa 没有以/结尾则全路径转发http://localhost:8081/model_two/aaa
server { listen 80; server_name _; location /model_one { proxy_pass http://localhost:8080; } location /model_two { proxy_pass http://localhost:8081; } }
 

 

3.简单的负载均衡

//简单的负载均衡,nginx支持ip_hash等分流,也支持插件自定义规则分流
upstream  model{ 
  server 127.0.0.1:8080
  server 127.0.0.1:8081
  server 127.0.0.1:8082
} server {     listen
80;     server_name localhost;
    location
/ { proxy_pass model; proxy_redirect default;     } }

注:上面都是一些简单的配置,实际使用时还需要配置一些其它的选项

posted @ 2018-03-14 10:15  meetzy  阅读(7410)  评论(2编辑  收藏  举报