多个上游的Nginx一致性哈希

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

上游服务器是wowza。有两个上游

upstream wowza {
  hash $arg_streamKey consistent;
   server x.x.x.x:8087;
   server x.x.x.y:8087;
}

upstream wowza_thumbnail {
  hash $arg_streamKey consistent;
   server x.x.x.x:8086;
   server x.x.x.y:8086;
}

第一个上游指向API,第二个指向Thumbnail URI。

我将hashKey更改为查询参数,认为哈希将基于查询参数,并且它将针对两个上游解析为同一服务器,但事实并非如此。

在某些情况下,第二个上游解析到另一台服务器,我认为这是由于端口更改所致。

是否有办法使两个上游的一致性哈希保持一致?

任何帮助将不胜感激。

nginx wowza consistent-hashing nginx-upstreams
1个回答
0
投票

好。我了解我在这里要问的是不可行的。因此,我没有创建两个上游,而是创建了一个,并在上游服务器上设置了一个Nginx代理,该代理通过proxy_pass指向单个端口的路径上的两个端口。

upstream wowza {
  hash $arg_streamKey consistent;
   server x.x.x.x:8081;
   server x.x.x.y:8081;
}

Wowza 1和Wowza 2

server {
    listen 8081;
    server_name _;

    location /thumbnail {
        proxy_pass http://localhost:8086;
    }

   location / {
        proxy_pass http://localhost:8087;
   }

}

这帮助我仅处理一个指向端口8081的上游块。

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