Java是否有一个很好的开源抽象负载平衡库?

时间:2012-05-29 10:02:41

标签: java open-source load-balancing

我正在寻找一个开源库,它允许对任意形式的节点的一组调用进行编程负载平衡 - 因此不需要关于HTTP或其他任何东西的假设,只需对对象进行方法调用。理想情况下,它将提供以下功能:

  • 平衡负载
  • 如果对节点的调用引发异常,则在其他节点上重试
  • 如果对该节点的调用失败,则将节点移至“已损坏”状态,并且不再对其进行调用
  • 有一个机制可以对所有节点(已损坏和活动节点)进行后台ping操作,这些节点会在它们返回时将已损坏的节点恢复到活动状态,并在它们失败时主动将活动状态恢复到损坏状态

我觉得这应该已经存在了,但是一些谷歌搜索还没有找到它。

3 个答案:

答案 0 :(得分:4)

考虑使用Apache Camel库。有一个灵活的load balancer,并且该库具有各种各样的组件,因此您不会坚持特定的协议或服务实现。使用Camel Bean组件,您甚至可以对POJO方法调用进行负载均衡。

答案 1 :(得分:1)

您还可以查看JavaSpaces。范例有一个简单的队列。最不活跃的处理器最有可能占用队列中的下一个项目。

答案 2 :(得分:0)

也许这可能很有趣,但它并不能满足您的所有要求:https://code.google.com/p/valogato/