2013-01-09 70 views
0

我们托管具有独立集群JMS服务器的集群应用程序服务器。 JMS服务器是主动/被动(共享存储)并使用操作系统集群时,应用程序服务器是主动/主动和负载平衡。这意味着从客户角度来看,每个端点只有一个端点。JMS集群:主动/被动

现在我们的任务是连接到外部JMS集群(主动/被动),但看起来他们希望我们在JMS客户端实现故障切换,换句话说:如果可能,连接到主服务器,故障切换到如有必要,则为次要

冒着听起来无知的风险,我从来没有见过这样的设置,但一些谷歌搜索似乎表明,这似乎是或多或少JMS的标准做法。

然后,我的问题是:为什么JMS提供者似乎更喜欢“客户端集群”,如果您愿意,而不是传统的负载平衡或其他服务器端集群方法?这确实是一个行业标准吗?

回答

0

我只使用JMS的主动/主动集群,其中两台服务器获取每条消息(它们彼此通信以保持同步)。他们没有像在不同的数据中心那样共享磁盘子系统。客户端配置有两台服务器,但一次只能连接一台服务器。 (通常是本地JMS服务器)故障转移对客户端来说是透明的。

我还看到配置有两个本地服务器和一个非本地服务器,因此一台服务器的故障不需要通过WAN连接到另一个数据中心。我自己并没有设置这样的配置。

对于系统管理员来说,使用共享存储器听起来很酷,但它的缺点是它对软件不那么透明。如果你有一个应用程序支持故障自己,这是更好的恕我直言。即如果服务没有故障转移,我只会使用共享存储。

1

现在我运行MySQL集群多开MQ看到此链接(http://mq.java.net/OpenMQ_MySQLCluster_Setup_Guide.html)

对于这个服务器拓扑上,你可以连接到任何节点(经纪人1 ,broker2)如果你在EJB容器上运行只是配置(取决于你使用的中间层),当某个节点死亡时它会自动切换容器。