【问题标题】:Load balancing according incoming traffic in haproxy根据 haproxy 中的传入流量进行负载平衡
【发布时间】:2012-08-25 15:18:57
【问题描述】:

我正在完美地使用带有循环的 haproxy,但现在我面临一个问题:我的一个后端服务器已加载。

  1. 我想知道我是否可以根据后端服务器上的负载平衡流量。另外,如果一个失败并限制为最大值。 conn 流量转到其他后端服务器
  2. 最小连接、循环和全局最大连接、默认最大连接和服务器最大连接之间的区别

【问题讨论】:

    标签: high-availability haproxy


    【解决方案1】:

    如果一个服务器比其他服务器负载更多,那么机械上它会在相同的请求率下看到更多的并发连接。这就是切换到最小连接算法变得有用的地方,这将确保所有服务器始终以相同数量的并发连接运行。例如,如果您的某些请求比其他请求长得多(例如:数据库中的复杂请求),这很有用。

    对于第二点,我会简短,因为所有内容都在文档中,但 leastconn 关注并发连接数,而 round robin 关注累积连接数。使用循环,每个服务器都会收到一个请求 反过来,同一台服务器上的请求之间的间隔是最佳的。这对于静态服务器或具有粘性的应用程序通常更好,因为一旦连接到服务器,用户就会发出大量请求,因为这可以确保您在同一台服务器上拥有相同数量的用户。全局 maxconn 是单个 haproxy 进程将支持的并发连接总数。当达到限制时,它将停止接受传入的连接。默认的 maxconn 仅适用于前端,当达到前端的 maxconn 时,该前端只会停止接受新连接。服务器 maxconn 确保 haproxy 永远不会向服务器发送太多连接。当达到限制时,尽可能选择其他服务器(无 cookie 等),或者请求排队,直到服务器释放连接以选择它。如果您的服务器过载,您应该检查连接数并应用略低于此值的服务器 maxconn 以保护它们。

    【讨论】:

      猜你喜欢
      • 2016-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-22
      • 1970-01-01
      • 2018-11-11
      • 1970-01-01
      • 2020-09-06
      相关资源
      最近更新 更多