首页 > 其他 > 详细

Nginx 配置

时间:2020-12-03 10:10:24      阅读:36      评论:0      收藏:0      [点我收藏+]

假设有3个实例,分别是localhost:1234/1235/1236

1.Nginx.conf文件

  http节点下的server节点

 server {
        keepalive_requests 120; #单连接请求上限次数。
        listen       8086;   #监听端口
        server_name  127.0.0.1;   #监听地址       
        location  ~*^.+$ {       #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
           #root path;  #根目录
           #index vv.txt;  #设置默认页
           proxy_pass  http://localhost:1234;  #请求转向localhost:1234 定义的服务器列表
           #deny 127.0.0.1;  #拒绝的ip
           #allow 172.18.5.54; #允许的ip           
        } 
    }

这个配置就是,监听本机的8086端口,转发到1234端口。

 

2.启动nginx

技术分享图片

 

 

 在安装目录下命令行输入start nginx启动,如果启动失败,可以去同目录下的log里查看error日志。

通过1,2步,其实就是为nginx配置了反向代理,客户访问8086,转向到了1234,客户接受到的响应内容都来自1234端口

 

3.轮询负载均衡  

第1步只配置了一个实例1234,现在配上所有3个

upstream myservers {   
      server localhost:1234;
      server localhost:1235;
    server localhost:1236; } error_page 404 https://www.baidu.com; #错误页 server { keepalive_requests 120; #单连接请求上限次数。 listen 4545; #监听端口 server_name 127.0.0.1; #监听地址 location ~*^.+$ { #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。 #root path; #根目录 #index vv.txt; #设置默认页 proxy_pass http://myservers; #请求转向mysvr 定义的服务器列表 #deny 127.0.0.1; #拒绝的ip #allow 172.18.5.54; #允许的ip } }

定义了一个myservers,放入所有实例的地址,重启nginx就行了。
技术分享图片

 

 这样会轮询的方式向三个实例分发请求,默认就是这个策略。

4.权重负载均衡

有时候我们布置的多个实例,性能是不一样的,轮询机制可能没法完全发挥它们的性能,那么可以将策略设置成权重,即按能力分配。

 

upstream myservers {   
      server localhost:1234 weight=1;
      server localhost:1235 weight=3;
    server localhost:1236 weight=9; }

 

这么设置就行了,权重越高,转发的几率越大。

5.IP分配
这个说实话不常用,设置也很简单,会根据ip地质hash到一个实例,从此这个ip会固定访问这个实例,除非这个实例失效,会重新hash,这里设置了ip_hash后,后面的权重就没效果了。
upstream myservers {  
    ip_hash; server localhost:1234 weight=1; server localhost:1235 weight=3;

    server localhost:1236 weight=9; }
6.最少链接数
也不常用,并且会与权重策略冲突,这个策略是优先分配给链接数少的实例,避免个别实例压力过大。
upstream myservers {  
    #ip_hash;
    least_conn; server localhost:1234; server localhost:1235 ;

    server localhost:1236; }

另外还有
fair最短响应时间:哪个实例相应最快,优先转发给它。
url_hash url固定响应,当某个页面需要特别处理,可以设置,让访问这个页面的请求全部转发给一个固定的实例。

Nginx 配置

原文:https://www.cnblogs.com/luyShare/p/14077255.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!