java - 使用 JBoss EWS 2.0 进行集群

标签 java tomcat jboss session-replication

在我们的生产环境中,我们使用 JBoss Enterprise Web Server 2.0 ,它基本上是 Apache HTTP Server 和稍作修改的 Tomcat 7 的捆绑。我们有两个节点,位于不同的服务器上,并且我们正在尝试在节点之间建立具有 session 故障转移(复制)的集群。我最初的想法是简单地遵循 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 Server 级别配置集群。但前面我们并没有真正使用 Apache HTTP,所以它不适用。现在我想知道是否应该从标准 Tomcat 7 安装中添加集群库,或者是否有另一种“标准”方式使用 JBoss EWS 配置集群?有人用 JBoss EWS 设置集群吗?欢迎任何见解。

编辑:

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

Apache Tomcat 7 - Clustering has been removed - Red Hat® does not believe this feature is suitable for medium or large-scale production deployments.

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

编辑:

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

Tomcat Clustering has been excluded from the Apache Tomcat 6 and 7 component. Specifically the catalina-tribes.jar and catalina-ha.jar files have been removed. This eliminates the possibility of session replication.

最后一句话特别令人不安......

最佳答案

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

您可以手动添加它们,但我建议您尝试 http://code.google.com/p/memcached-session-manager/反而。在 Tomcat 6(和硬件 LB)上运行良好。

对于 Tomcat 7 应该同样有效。

关于java - 使用 JBoss EWS 2.0 进行集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15779736/

相关文章:

java - Tomcat 与 WebSphere 与 WebLogic 的安全性

java - 是什么导致 JBoss 7.1.1 中出现此 SQL/Hibernate 错误?

java - 没有为该名称定义查询 [getAuditTaskById]

java - 有没有办法在 spring boot 应用程序中访问部署的 html 文件?

java - 没有jdbc等框架,如何在java中连接数据库?

java - 未使用 @Resource 注入(inject) WebServiceContext

java - 将 JMS 监听器重新连接到 JBossMQ

java - Kotlin JaCoCo - IllegalClassFormatException。请提供原始的非仪器类

java - 语法荧光笔服务器端 Java 库

java - 每分钟都会调用远程 Web 服务,而无需我调用它们