在客户端使用Httpurlconnection加载平衡Web服务器

时间:2011-04-11 13:12:23

标签: java load-balancing

我的应用程序需要连接到Web服务才能获取xml数据。我有四个Web服务端点。

在Web服务之间进行负载均衡的最佳方法是什么?

我知道最好的方法是使用硬件/软件负载均衡器,但我必须在客户端进行。

我使用HttpURLConnection开发了一个客户端,它可以在任何一个端点上正常工作。

我计划在网址上使用hashmap,然后逐个使用。

此致 姆兰

1 个答案:

答案 0 :(得分:1)

如果没有协调服务端点之间连接分配的中心点,那么每次建立连接时,您几乎只能选择任意四分之一。一种合理的方法可能是依次使用每个端点进行客户端的连续交互(从随机选择的一个开始,以确保在客户端可能重新启动时没有对单个端点的偏重)。

或者,您可以实现返回首选连接的端点,客户端将从该端点进行后续调用。然后,实现可以为客户端分配循环风格,或者参考每个端点在任何给定时间报告的负载。

在这两种方法中,前者到目前为止更简单,并且应该在端点上给出合理均匀的分布。后者将允许添加额外的端点,而无需更新客户端。