Weblogic 10,会话复制

Weblogic 10,会话复制,weblogic,Weblogic,我正在使用集群中的两个服务器实例进行会话复制 会话id没有被复制到第二台服务器,因此它总是创建一个新的,我打开的应用程序出错并关闭。如何处理服务器实例的此故障转移,以便用户不会知道服务器实例是否已关闭。以下是我在weblogic.xml中使用的设置 <?xml version="1.0" encoding="ISO-8859-1"?> <weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/weblo

我正在使用集群中的两个服务器实例进行会话复制

会话id没有被复制到第二台服务器,因此它总是创建一个新的,我打开的应用程序出错并关闭。如何处理服务器实例的此故障转移,以便用户不会知道服务器实例是否已关闭。以下是我在weblogic.xml中使用的设置

    <?xml version="1.0" encoding="ISO-8859-1"?>

      <weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app">
         <session-descriptor>
       <session-param>
      <param-name>URLRewritingEnabled</param-name>
        <param-value>true</param-value>
       </session-param>
        <session-param>
        <param-name>PersistentStoreType</param-name>
       <param-value>replicated</param-value>
     </session-param>
     </session-descriptor>

 <context-root>@CONTEXT_ROOT@</context-root>
  </weblogic-web-app>

URLEwritingEnabled
真的
PersistentStoreType
复制
@上下文根@

既然您知道直接访问应用服务器并不能缓解会话id问题,那么您需要进行更深入的调试:

  • 在Firefox中安装Firebug()
  • 在Firefox中访问您的网站
  • 在Firefox中打开Firebug(并确保Firefox的“网络”选项卡(可能为灰色)已启用)
  • 登录您的网站
  • 查看firebug中的Net选项卡,并展开请求的加号
  • 查看请求头部分——在cookie字段中是否看到类似于JSESSIONID的内容?如果是这样,那么当您导航到站点上的其他页面时,JSESSIONID是保持不变还是发生变化
  • 我附上了一个使用Firebug查看cookie的屏幕截图,当您登录到weblogic管理控制台进行比较(而不是ADMINCONSOLESESSION,您将看到JSSessionID作为cookie键)时,cookie会被设置并在每次请求时重新发送


    您的weblogic实例前面是否有任何东西正在路由到集群中的实例?e、 g Apache web服务器,OHS,物理负载平衡器?您还可以澄清一下--您的问题是HTTP会话数据似乎没有在实例之间复制,还是您看到会话id没有随着后续请求(导致创建新的会话对象)一起传回Apache Webserver+负载平衡器。并且会话id不会随后续请求一起传回(导致创建新的会话对象)您是否能够测试对服务器的请求,其中1)不通过负载平衡器,2)不通过apache web服务器(以便您可以查明导致会话id无法传回的原因)。建议使用免费工具“FireBug”检查发送到服务器的请求。它将告诉您sesionid最初是否与请求一起发送。使用该工具并直接转到WebLogic或直接转到Apache Web服务器将有助于告诉您负载平衡器或Apache Web服务器是否正在从请求中删除会话id。此外,将启用url重写(设置为true)添加到WebLogic.xml,并查看问题是否仍然存在。这将有助于查明根本原因。请参阅:我在weblogic.xml中添加了urlRewriting标志,但没有帮助。此外,我还尝试直接访问应用程序服务器。看起来会话没有发送回下一个节点。我正在使用Swings框架。只想检查一下——您之前提到过您正在使用“Swings框架”。您是将小程序部署到weblogic还是Java web应用程序?您好,这是Java web应用程序。昨天的另一个发现是,尽管集群中有两台应用程序服务器,但JSession id一次只包含一台服务器的信息(运行它的当前服务器)。lkjdjlsjlfdjkf-234234234我认为它应该包含主服务器和辅助服务器的信息。你知道我是不是遗漏了一些配置吗?你是如何将你的weblogic插件配置成apache的?能否将weblogic插件配置粘贴到原始问题?我可以告诉你,你是否正确配置了它。嗨,嗨,这方面运气好吗?如果是这样,请更新此决议,以便其他人可以从中受益。谢谢