【问题标题】:Why can't I replicate the session to other server when I use wildfly?为什么我在使用 wildfly 时不能将会话复制到其他服务器?
【发布时间】:2015-02-25 03:58:03
【问题描述】:

我已经使用域模型在WildFly 8 Cluster Howto 中完成了所有工作。我可以在服务器管理器控制台中看到每台服务器,并且可以看到 mod_cluster-manager。

一切正常,但是当我使用会话测试war,cluster-demo.war时,我访问了一个服务器的put.jsp,然后关闭服务器,再访问其他服务器的get.jsp,我发现会话为空.

【问题讨论】:

  • 您是否在使用浏览器检查 http 会话?如果是这样,请尝试使用 curl 进行测试。我陷入了那个陷阱,也许对你来说也是一样。检查我的问题。 stackoverflow.com/questions/27780952/…
  • 你用什么做负载均衡器?
  • 您是否在服务器控制台中看到任何消息,例如“会话复制已发生”?

标签: java cluster-computing wildfly


【解决方案1】:

我用wildfly 9文档做了所有事情,最后一步失败了http://IP/cluster-mode/put.jsp

我通过以下步骤解决了这个问题:(操作系统是 Cent 6.5)

  1. 我使用 1.2.6 版本的 mod_cluster。
  2. 在 httpd.conf:<VirtualHost IP:10001> 标签中添加“EnableMCPMReceive ON”。
  3. 修改Slave domain.xml,搜索“CHANGE ME !!”在<hornetq-server> 标签中,并将其更改为“@password@”。
  4. 修改主从域.xml 来自

    <subsystem xmlns="urn:jboss:domain:modcluster:2.0"> <mod-cluster-config advertise-socket="modcluster" connector="ajp"> <dynamic-load-provider> <load-metric type="???"/>(I forgot original setting) </dynamic-load-provider> </mod-cluster-config> </subsystem>

`<subsystem xmlns="urn:jboss:domain:modcluster:2.0">
 <mod-cluster-config advertise-socket="modcluster" connector="ajp" proxy-list="IP:10001" balancer="other_server_group">
   <dynamic-load-provider>
    <load-metric type="busyness"/>
   </dynamic-load-provider>
 </mod-cluster-config>
</subsystem>`

PS:平衡器值必须映射 httpd.conf:"ManagerBalancerName" 设置,不能使用“-”。

  1. 停止 iptables whit 命令:sudo service iptables stop
  2. 使用命令停止 SELinux:sudo setenforce 0
  3. 重启httpd,JBoass master,slave。

你所做的一切都会看到http://IP/cluster-mode/put.jsp有时间展示。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多