2

我已将 apache2.4 http 负载均衡器配置为:

ProxyPass /nuxeo balancer://sticky-balancer   stickysession=JSESSIONID|jsessionid nofailover=On

<Proxy balancer://sticky-balancer >
BalancerMember xxxxxxx.40:8080/nuxeo route=nxworker1
BalancerMember xxxxxxx.41:8080/nuxeo route=nxworker2
</Proxy >
ProxyPreserveHost On

在 nuxeo 实例上,我按照 nuxeo 文档 40 的建议完成了配置:
nuxeo.server.jvmRoute=nxworker1 和 nuxeo.server.jvmRoute=nxworker2 at 41

当其中一个实例因 ex 40 而关闭时,在用户连接并处理它期间,它需要再次登录,因为似乎没有为节点 41 复制会话

有什么建议吗?

谢谢

4

1 回答 1

2

这是预期的:会话是粘性的,而不是复制的。如文档中所述,您是否必须再次进行身份验证,具体取决于您的配置和架构:

Nuxeo 平台要求对所有调用进行身份验证。根据您的架构,身份验证可以是无状态的(例如:Basic Auth)或有状态的(例如:Form + Cookie)。无论哪种方式,您可能都不想在所有呼叫期间重播身份验证。

这就是为什么拥有基于会话的身份验证 + 会话亲和性是有意义的:您不必每次调用服务器时都重新进行身份验证。

如果会话亲缘关系无法恢复,例如因为目标服务器已关闭:

  • 无状态身份验证将自动重播(例如:基本身份验证)
  • 对于有状态的身份验证:
    • 如果您有 SSO,这将是透明的
    • 如果您没有 SSO,则用户必须再次进行身份验证。
于 2016-02-12T12:01:19.613 回答