使用 Nginx Plus 对 WebSphere Liberty Profile 服务器进行负载平衡

Loadbalancing WebSphere Liberty Profile Servers using Nginx Plus

我在三个独立的 Liberty Profile 服务器(每个)上有两个应用程序 运行。第一个应用程序呈现 UI,第二个应用程序通过 REST 网络服务提供数据。 UI 应用程序有一个登录页面,成功登陆后会将用户带到主页。主页显示从同一服务器上的其他 REST 应用收到的一些响应数据

我已经在这 3 台服务器前面配置了一个负载平衡器。我能够成功登录并登陆主页。但是该页面未填充来自 REST 服务的响应。

以下是我在nginx plus中添加的default.conf条目

upstream mycluster {
    ip_hash;
    server 162.194.243.182:9080;
    server 162.194.243.183:9080;
    server 162.194.243.184:9080;

}

location / {
        proxy_pass http://mycluster;
    }

我不确定从 Loadbalancer 的角度来看我错过了什么配置。有人可以帮我吗?

谢谢。

您应该使用 JSESSIONID 亲和力:

upstream my_cluster {
  server 162.194.243.182:9080;
  server 162.194.243.183:9080;
  server 162.194.243.184:9080;

  sticky learn
        create=$upstream_cookie_JSESSIONID
        lookup=$cookie_JSESSIONID
        zone=client_sessions:1m;
}