AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 803637
Accepted
Alexis Wilke
Alexis Wilke
Asked: 2016-09-17 12:42:08 +0800 CST2016-09-17 12:42:08 +0800 CST 2016-09-17 12:42:08 +0800 CST

HAProxy 是否可以确定后端服务器的负载并避免向负载高的服务器发送请求?

  • 772

我想知道知道每个后端服务器的 loadavg 是否会有优势,并要求 HAProxy 将下一个请求发送到 loadavg 最低的计算机。

但是,我还没有看到任何可以在 HAProxy 中提供这种功能的东西。也许它不可用?

我发现这篇文章显示了一个带有use_backend命令的前端定义,但我认为地图将被加载一次并在 HAProxy 运行的整个持续时间内缓存。否则,通过 loadavg 动态更改对项目进行排序的地图不会有任何区别......

frontend ft_items
  [...]
  use_backend %[path,lower,map(/etc/haproxy/items.map,bk_default)]

我不清楚轮询对我的应用程序是否足够好,因为有些请求需要 50 毫秒(图像、CSS 等),而其他请求可能需要 2 秒(大型报告)。因此,检查计算机的 loadavg 似乎更符合此应用程序的要求。

load-balancing haproxy load-average
  • 2 2 个回答
  • 2789 Views

2 个回答

  • Voted
  1. Tim Fletcher
    2016-09-17T13:29:46+08:002016-09-17T13:29:46+08:00

    您最好将 HAProxy 映射分解,以便对静态资源的快速请求通过一个循环映射进行,而较慢的请求通过不同的 RR 映射进行。

    您可以对请求使用相同或不同的后端池,其想法是平均所有服务器处理相同数量的快速和慢速请求。或者,您可以将它们映射到不同的后端系统,并使用更强大的系统来处理报告的计算密集型工作。

    • 1
  2. Best Answer
    Malcolm turnbull
    2016-09-18T23:52:11+08:002016-09-18T23:52:11+08:00

    亚历克西斯,

    这听起来与代理检查的用途完全一样。Willy 好心地添加了我们用于 Loadbalancer.org 设备的补丁,并且我们已经开源了基于 Windows 的服务器代理。包括基本 Linux 服务器示例的说明如下:

    https://www.loadbalancer.org/blog/open-source-windows-service-for-reporting-server-load-back-to-haproxy-load-balancer-feedback-agent

    Windows 代理可以监控 CPU、RAM 和 TCP 连接计数的组合(即 RDP 会话)。

    随时欢迎反馈。这提醒了我——如果有人实现了某种服务器响应时间算法,那就太好了,那么你就不一定需要基于服务器的代理了。

    • 1

相关问题

  • 网络负载平衡服务器无法相互通信

  • 用于网络监控的路由/代理 SNMP 陷阱(或 Netflow、通用 UDP 等)的解决方案?

  • 防止拒绝服务攻击的最佳技术是什么?

  • 添加备份互联网连接需要哪些硬件?

  • 什么是最有效的 Windows 负载平衡解决方案?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve