Nginx 作 WebService 反向代理

Nginx 的 server 配置 ksb.conf

复制代码
upstream router {
    server 10.88.115.114:5555 weight=2;
    server 10.88.115.137:80 weight=1;
}

server {
    listen       8080;
    server_name  10.88.115.137;
    charset utf-8;

    proxy_intercept_errors on;
    location / {
        proxy_pass    http://router;
        proxy_set_header   Host                 $host;
        proxy_set_header   X-Real-IP            $remote_addr;
        proxy_set_header   X-Forwarded-For      $proxy_add_x_forwarded_for;
        proxy_set_header   X-Forwarded-Proto    $http_x_forwarded_proto;
        proxy_set_header   Via                  "nginx";
        proxy_read_timeout 660;
        proxy_connect_timeout 10;
        proxy_send_timeout 60;
    }
}
复制代码

重点关注几个配置项:

  • upstream:用于配置 nginx 后端服务器(即 upstream,上游服务器),这里我们配置了两个后端服务器,并设置转发的权重分别为 2 和 1
  • proxy_pass:配置代码转发,即使用上面 upstream router 作为后端服务器转发
  • proxy_read_timeout:nginx 与后端服务器连接成功后,后端服务器响应的超时时间,即后端服务器处理请求的超时时间,由于后端服务器处理请求的最长时间为 600 秒,这里设置 660 秒
  • proxy_connect_timeout:nginx 与后端服务器连接的超时时间
  • proxy_send_timeout:后端服务器完成请求处理后,传输完整数据的超时时间

先启动两个后端服务器,这两个后端服务器均对处提供 WebService 接口。然后使用 docker-compose up -d 启动 nginx 作为 WebService 接口反向代理。

客户端访问 nginx ,可以看到客户端 WebService 请求被正常转发到了两个 WebService 后端服务器处理,然后客户端通过 nginx 正常获取了后端服务器的返回结果。

 

from :https://leehao.me/Nginx-%E4%BD%9C-WebService-%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86/

 

posted @   一个土豆一棵青菜  阅读(1409)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2011-11-16 jquery的checked以及disabled
2011-11-16 sql2005+调用c#扩展
点击右上角即可分享
微信分享提示