Websphere 如何在liberty server中启用会话关联

Websphere 如何在liberty server中启用会话关联,websphere,websphere-liberty,open-liberty,Websphere,Websphere Liberty,Open Liberty,我需要在liberty server中启用会话关联。它是默认启用的还是我们有一些可以在server.xml文件中配置的标记或属性。如果您的应用程序使用Java EE HTTP会话APIHTTPServletRequest.getSession(),则Liberty将发出cookie,允许任何HTTP代理服务器在不进行任何配置的情况下保持关联性 通常需要配置的部件只有: 选择自定义/持久HTTP克隆ID,在其他环境中也称为“工作者”或“路由”名称。这可以通过一个简单的server.xml标记来完成

我需要在liberty server中启用会话关联。它是默认启用的还是我们有一些可以在server.xml文件中配置的标记或属性。

如果您的应用程序使用Java EE HTTP会话API
HTTPServletRequest.getSession()
,则Liberty将发出cookie,允许任何HTTP代理服务器在不进行任何配置的情况下保持关联性

通常需要配置的部件只有:

  • 选择自定义/持久HTTP克隆ID,在其他环境中也称为“工作者”或“路由”名称。这可以通过一个简单的server.xml标记来完成:
  • 会话持久性,与故障转移相关,但与关联性无关,需要重要的配置,例如用于共享存储的备份数据库或内存网格
  • 要确认会话关联是否正常工作,请执行以下操作:

  • 启动匿名浏览器
  • 访问您的应用程序
  • 使用浏览器开发人员工具或Web服务器日志查看传入或传出的会话cookie
  • 注意JSSessionID最后一个“:”分隔字段中的克隆ID 饼干
  • 如果没有cookie,就没有关联,因为没有建立会话。这是一个应用程序问题

    如果存在cookie,但它不能将您带回正确的服务器,这可能是因为在生成Web服务器配置时使用的克隆ID已不再被后端应用程序使用。如上所述,选择一个持久性克隆并重新生成/配置


    如果您认为存在问题,则需要至少能够在webservers plugin-cfg.xml中显示客户端传输的会话cookie和服务器定义,以及在服务器上自动生成的日志/state/plugin-cfg.xml中显示的克隆ID,您认为该请求应该与之有关联。

    @conventer如果我们有多个独立的liberty服务器,这可以实现。或者我们需要对liberty服务器进行集群。TksMultiple standalone servers(多个独立服务器)很好,它们不需要为亲和性相互了解。这就是系统的工作方式,我在物理服务器122中有两个liberty服务器,其中有应用程序A和B,另一个服务器123有两个liberty服务器,其中A和B与122中相同。我已经生成了插件并合并了它,然后我再次合并了122和123的合并插件并传播到IBMHTTP服务器。在这种情况下,我无法实现会话关联。是否有任何其他配置我需要做。TksI补充了我的答案,但你必须明白,这个网站是为关于编程主题的问答而设计的。这可能更适合于developerworks上的论坛。