HAProxy健康检查

我有三个与同一主题有关的小问题:

  1. 使用HAProxy,有没有什么办法可以根据不同服务器的当前负载 (即将请求路由到最less的服务器)进行负载均衡。
  2. 如果没有,为什么HAProxy中没有内置这种行为? 这样做是否有任何主要的性能影响? 我想象的不是寻找最less的连接( leastconnalgorithm),而是寻找最低的负载。
  3. 如果这样做没有主要的性能影响,那么我是否可以将此function构build到自定义HAProxy分发中,而不会影响性能?

用haproxy做这件事的唯一方法是创build一个haproxy的健康检查检查脚本。 在脚本中,您正在检查平均负载,如果它是一个有效的负载..返回200的响应代码。如果它太高返回404或500错误。 你的haproxy支票看起来像

 option httpchk HEAD /health_check.php HTTP/1.0 

如果haproxy看到任何2xx / 3xx响应,它将是有效的。其他任何东西都会使该节点脱机,直到节点的负载下降,并且health_check.php脚本返回200