我想知道是否有优势或不知道每个后端服务器的loadavg,并要求HAProxy发送下一个请求到最低loadavg的计算机。
但是,我还没有看到任何在HAProxy中提供这种function的东西。 也许它不可用?
我发现这个post显示了一个使用use_backend
命令的前端定义,但我认为地图将被加载一次并caching整个HAProxy运行期间。 否则,通过loadavgdynamic地改变地图sorting的项目将没有什么区别…
frontend ft_items [...] use_backend %[path,lower,map(/etc/haproxy/items.map,bk_default)]
目前还不清楚roundrobin对于我的应用程序是否足够好,因为有些请求需要50ms(图片,CSS等),而其他的可能需要2s(大型报告)。 所以检查计算机的loadavg似乎更适合这个应用程序的帐单。
亚历克西斯,
这听起来就像代理检查是用来做什么的。 Willy很好地添加了我们用于Loadbalancer.org设备的补丁,并且我们已经开源了基于Windows的服务器代理。 包括一个基本的Linux服务器例子的说明在这里:
Windows代理可以监视CPU,RAM和TCP连接计数(即RDP会话)的组合。
反馈总是欢迎。 这提醒了我 – 如果某人实现了某种服务器响应时间algorithm,那将是很好的,那么您不一定需要基于服务器的代理。
您最好打破HAProxy地图,以便通过一个循环映射快速请求静态资源,通过不同的RR映射请求较慢的请求。
您可以为请求使用相同或不同的后端池,平均而言,所有服务器都处理相同数量的快速和慢速请求。 或者,您可以将它们映射到不同的后端系统,并使用更强大的系统进行计算密集的报告工作。