nginx搭配gateway的集群配置

一、nginx在http里配置如下信息

复制代码
upstream gateway-cluster {
        server 127.0.0.1:10001;
        server 127.0.0.1:10002;
    }

    server {
        listen       1000;
        server_name  localhost;

        location ~/zzw_project/(.*) {
            proxy_pass http://gateway-cluster/$1;

            proxy_set_header Host $host;  # 代理设置,保留客户端的原始信息
            proxy_pass_request_body on;  #开启获取请求体
            proxy_pass_request_headers on;  #开启获取请求头
            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 $scheme;

            # 建议增加超时时间设置,避免gateway响应延迟导致请求超时
            proxy_connect_timeout 60s;
            proxy_send_timeout 60s;
            proxy_read_timeout 60s;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

二、搭建gateway服务

三、总结调用过程,以(http://localhost:1000/zzw_project/pay-api/pay/result)为例

localhost:1000首先到nginx监听到,通过location命中,走代理负载后面路径变成http://127.0.0.1:10001/pay-api/pay/result。接下来请求到了网关gateway,/pay-api/pay/result这个路径被接收的路径捕获到,filters一下路径变成/pay/result,加上uri的pay-api(通过向注册中心获取具体的ip和端口)变成http://127.0.0.1:8201/pay/result。

相关推荐
R.lin2 分钟前
浅谈Nginx
运维·nginx
YJlio33 分钟前
ListDLLs & Handle 学习笔记(8.11):谁注入了 DLL?谁占着文件不放?一篇教你全搞定
网络·笔记·学习
风车带走过往1 小时前
Windows10 使用 dynv6 + ddns-go 实现 IPv6 固定域名远程访问指南
网络
Crazy________1 小时前
37负载均衡介绍和nginx模块编译安装
运维·nginx·负载均衡
爱奥尼欧1 小时前
【Linux笔记】网络部分——NAT-代理-网络穿透
linux·网络·笔记
njxiejing1 小时前
基于Packet Tracer的路由器的基本配置(地址、密码,远程登录)
网络·智能路由器
阿巴~阿巴~2 小时前
UDP服务端绑定INADDR_ANY后,客户端该用什么IP访问?
服务器·网络·udp协议·网络测试·udp套接字编程·inaddr_any
MARIN_shen2 小时前
PCB之电源完整性之电源网络的PDN仿真CST---08
网络·单片机·硬件工程·pcb工艺
百***34133 小时前
Nginx实现接口复制
运维·nginx·junit