【问题标题】:Clustering with JBoss EWS 2.0使用 JBoss EWS 2.0 进行集群
【发布时间】:2013-04-03 05:45:26
【问题描述】:

在我们的生产环境中,我们使用JBoss Enterprise Web Server 2.0,它基本上是 Apache HTTP Server 和稍微修改的 Tomcat 7 的捆绑。我们有两个节点,在不同的服务器上,我们正在尝试设置集群在节点之间进行会话故障转移(复制)。我最初的想法是简单地关注Tomcat 7 Clustering How-To。但是按照上述指南(使用示例中的配置)并启动服务器会出现此错误:

java.lang.ClassNotFounException: org.apache.catalina.ha.tcp.SimpleTcpCluster

也在日志中:

INFO: Cluster RuleSet not found due to [java.lang.ClassNotFoundException: org.apache.catalina.ha.ClusterRuleSet]. Cluster configuration disabled.

看来,JBoss EWS 附带的 Tomcat 7 版本没有附带标准的 Tomcat 7 集群库。相反,Tomcat安装的lib文件夹中似乎有很多mod_cluster-*.jar文件。

我找到的关于这个主题的所有文档都是如何在 Apache HTTP 服务器级别配置集群。但是我们前面并没有真正使用Apache HTTP,所以它不适用。现在我想知道我是否应该从标准的 Tomcat 7 安装中添加集群库,或者是否有另一种“标准”的方式来使用 JBoss EWS 配置集群?有人用 JBoss EWS 设置集群吗?欢迎任何见解。

编辑:

我在文档JBoss Enterprise Web Server Component Details中找到了这个注释

Apache Tomcat 7 - 集群已被删除 - Red Hat® 认为此功能不适用于中型或大型生产部署。

这就解释了为什么 Tomcat 集群库不可用。

编辑:

更多信息,请参见Release notes for JBoss EWS 2.0.0

Tomcat 集群已从 Apache Tomcat 6 和 7 组件中排除。特别是 catalina-tribes.jar 和 catalina-ha.jar 文件已被删除。这消除了会话复制的可能性。

最后一句话特别扎心……

【问题讨论】:

    标签: java tomcat jboss session-replication


    【解决方案1】:

    是的,JBoss EWS 1.0 和 2.0 中都没有标准的 Catalina 集群 JAR。

    您可以手动添加它们,但我建议您改用http://code.google.com/p/memcached-session-manager/。在 Tomcat 6(和硬件 LB)上非常适合我们。

    应该同样适用于 Tomcat 7。

    【讨论】:

    • 谢谢,我一定会调查的。
    • 我收到了来自 RedHat 的关于 JBoss EWS 中的会话复制的官方回复。请参阅我添加的答案。
    【解决方案2】:

    根据 RedHat 的官方回复,JBoss EWS 不支持会话复制。我猜会话复制不是 RedHat 的“企业”功能……如果我们希望以受支持的方式进行会话复制,我们需要升级到 JBoss EAS。

    当然,这并不意味着不能使用 JBoss EWS 进行会话复制。只是不会被支持。因此可以将 catalina 集群库复制到 JBoss EWS 中,并按照 Tomcat 7 集群方法中描述的方式设置集群和复制。或者按照@Jukka 的建议使用其他会话复制框架。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-03
      • 2013-04-02
      • 1970-01-01
      相关资源
      最近更新 更多