在我们的生产环境中,我们使用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安装的文件夹中似乎有很多mod_cluster-*.jar
文件。lib
我在这个主题上找到的所有文档都是如何在 Apache HTTP Server 级别配置集群。但是我们前面并没有真正使用Apache HTTP,所以它不适用。现在我想知道我是否应该从标准的 Tomcat 7 安装中添加集群库,或者是否有另一种“标准”方式使用 JBoss EWS 配置集群?有人用 JBoss EWS 设置集群吗?欢迎任何见解。
编辑:
我在文档JBoss Enterprise Web Server Component Details中找到了这个注释
Apache Tomcat 7 - 集群已被删除 - Red Hat® 认为此功能不适用于中型或大型生产部署。
这就解释了为什么 Tomcat 集群库不可用。
编辑:
更多信息,可在JBoss EWS 2.0.0 的发行说明中找到
Tomcat 集群已从 Apache Tomcat 6 和 7 组件中排除。特别是 catalina-tribes.jar 和 catalina-ha.jar 文件已被删除。这消除了会话复制的可能性。
最后一句话特别扎心……