nginx反向代理,负载均衡

 

nginx介绍

 nginx是一个高效的反向代理工具,可以很方便的实现服务的负载均衡

 反向代理方式实际上就是一台负责转发的代理服务器,请求的时候不请求具体的服务器而已请求代理服务器nginx,

 然后nginx负责请求真正的服务器,然后返回给客户端

 

    

nginx启动

下载后nginx后解压如图

 可以双击nginx.exe运行也可以使用命令行运行

 按住shift然后右键就可以看到:在此处打开命令窗口 快速的定位到nginx的解压位置

 然后运行:start nginx

会一闪而过,如果在进程中找到说明启动成功了

如果在进程中没有找到说明报错了

可以找到错误日志查看,logs里边的error.log

  几个常见的错误

  1:10013: An attempt was made to access a socket in a way forbidden by its access permissions

   这个是由于和nginx里边设置的端口冲突了,比如默认的就是80端口被占用了,我这里是和iis的80端口占用,把iis关闭的就好  

  2:1113: No mapping for the Unicode character exists in the target multi-byte code page

  这个是因为中文目录问题,加入到英文目录中就好了

  成功之后访问可以看到

 

  新建两个WebApi模拟不同服务器

  

  端口9000 返回value

 

  端口9001 返回value2

  

   

  配置nginx实现负载均衡

  

  1:在http节点下,加入upstream节点

  upstream 192.168.0.107
    {
       server 192.168.0.108:8081;
       server 192.168.0.108:8080;
    }

 2:在server节点中的location加入proxy_passp配置了,反向代理的地址

      我们请求的地址就是这个

     

 整体配置效果如下:

 

  配置文件修改后使用命令nginx -s reload 重启一下服务

  到此一个简单的负载均衡就实现了

 

  我们请求的时候就不直接请求webapi的地址而是代理服务器的地址

  

 

  除了负载均衡之外我们还可以配置每台服务器的权重比例

  可以根据不同服务器的性能来配置权重

  upstream 192.168.131.125
    {
       server 192.168.131.125:9000 weight=1;
       server 192.168.131.125:9001 weight=2;
    }

 权重越大访问次数就越多,比如这里端口9000的访问次数是1/3,端口9001访问次数是2/3

 

nginx 服务器重启命令,关闭

nginx -s reload  :修改配置后重新加载生效

nginx -s reopen  :重新打开日志文件
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确

 

  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值