异构Java EE集群

时间:2012-12-12 01:16:41

标签: java java-ee jboss glassfish ejb-3.0

是否可以形成一个群集,其中有不同类型的应用程序服务器?例如,1 JBoss ,1 Glassfish 和1 WebSphere ?让我们假设我们正在使用 EJB3.0 。 无状态会话bean应该相对容易,实例之间的简单负载平衡应该可以完成工作,但是 SFSBs 和会话复制呢?是否有可能利用像infinispan这样的缓存存储?

感谢您提出任何意见或分享您对此主题的体验。

2 个答案:

答案 0 :(得分:1)

我认为如果您使用某些与应用服务器无关的解决方案(如Hazelcast),则可能会出现这种情况。根据{{​​3}},配置Web会话复制非常简单,只有它的唯一要求是

  • 目标应用程序或Web服务器应支持Java 1.5 +
  • 目标应用程序或Web服务器应支持Servlet 2.4+规范
  • 需要群集的会话对象必须是可序列化的

我没有尝试按照您描述的方式配置群集,但我认为它可以解决问题。

答案 1 :(得分:0)

答案完全是NO。 Clusturing是一个非标准功能,由Java EE实现提供保持标准行为的clustoring(具有非常小的约束,因为期望粘性并且会话对象预期可序列化)并且没有互操作性。

您当然可以将群集设置为自己,设置外部数据网格作为会话存储并管理自己的缓存,但是您将丢失与会话相关的任何框架功能(您将需要执行每个操作)你自己的事情)以及使用完整的Java EE应用服务器的重点。是的,您将需要忘记SFSB。

我很想知道你想通过这种类型的架构解决什么问题。我没有看到任何可能超过3个不同应用程序的成本(应用程序服务器在开发方面有差异),更重要的是3个不同的基础设施操作堆栈(在这一方面有很多不同,所以你需要增加了操作团队的知识。)