ServiceMix 4中的群集

时间:2010-05-25 18:59:35

标签: apache web-services cluster-computing load-balancing apache-servicemix

我正在尝试配置Apache ServiceMix 4以提供其文档中提到的负载平衡功能(例如:http://servicemix.apache.org/clustering.html)。虽然提到了,但我找不到确切的方法。

这个想法是让2个ServiceMix(例如在LAN中)安装相同的OSGi服务。当客户端尝试使用该服务时,负载均衡器会将其带到其中一个ServiceMix上的相应服务实例。

有一种简单的方法吗?

3 个答案:

答案 0 :(得分:4)

Fabric8(http://fabric8.io/)可以进行Karaf / ServiceMix群集以及更多开箱即用的功能。它还具有其他群集Camel组件,例如主端点和结构端点

有一个聚集的Camel示例,演示了

然后,客户端将在提供服务的活动节点之间进行负载平衡。因此,如果您有5个节点,那么它们之间会保持平衡。如果其中一个节点死亡或停止等,那么它只是在4个仍然活动的节点之间进行平衡。因此,该解决方案具有完全的弹性和可扩展性。

原理如下图所示:

enter image description here

答案 1 :(得分:2)

我没有使用分布式OSGi的经验,因此我只讨论基于JMS的群集解决方案。

这是一个很好的ServiceMix 4 JBI集群示例(请相信他你必须关闭conduitSubscriptions ......): http://trenaman.blogspot.com/2010/04/four-things-you-need-to-know-about-new.html

这也很重要: trenaman.blogspot.com/2009/03/new-jms-flow-in-servicemix-4.html

名称“JBI cluster”表明您应该使用此机制来集群应用程序,但在大多数情况下,最好将简单的JMS端点用于集群功能。如果您可以完全避免使用JBI,则尤其如此。

答案 2 :(得分:0)

我还没有达到我项目的这个阶段,所以我没有使用它的经验;但是Karaf有一个围绕分布式OSGi设计的子项目Cellar