如何通过 Nginx-sticky-module 在两个上游使用一个 Nginx Cookie(路由)

问题描述 投票:0回答:1

我正在使用 Nginx-sticky-module 使用 cookie 添加上游服务器持久性。但是我有两个这样的上游:

    upstream upstreamA{
        sticky;
        server server1:8080;
        server server2:8080;
    }
    upstream upstreamB{
        sticky;
        server server1:9080;
        server server2:9080;
    }

location /requestA {
    proxy_pass http://upstreamA;
}
location /requestB {
    proxy_pass http://upstreamB 
}
当用户请求 nginx:port/requestA 时,Nginx 可以保存该请求并将其分发到同一服务器。但是如果用户在 requestA 之后请求 nginx:port/requestB ,Nginx 会给它一个新的 Set-Cookie 值(route=xxx)通过Nginx-sticky-module根据upstreamB,Nginx可以在两个upstreams中只使用一个Cookie吗?

nginx load-balancing
1个回答
0
投票

非常有趣的方法,我有类似的问题。我的问题是,我需要对两个上游使用粘性会话,每个上游都有相同数量的上游目标,但我需要将它们成对使用。 从上面的示例来看,这意味着用户被转发到服务器“server1:8080”和“server1:9080”,而不是“server2:9080”。因此上游主机之间存在某种亲和力。我找不到方法来完成这项工作。

© www.soinside.com 2019 - 2024. All rights reserved.