【问题标题】:apache mod_proxy_balancer randomly stops sending traffic to backend server, but no errorsapache mod_proxy_balancer 随机停止向后端服务器发送流量,但没有错误
【发布时间】:2019-03-22 06:47:50
【问题描述】:

我正在使用 mod_proxy_balancer 来平衡两个后端 IIS 服务器。在监控 balancer-manager gui 时,我注意到 apache 偶尔会停止向其中一个成员发送流量。但是,日志中没有错误,也没有任何迹象表明服务器不可用。我尝试了各种 lbmethods(bytraffic、bybusyness)并看到相同的结果。我需要确定为什么流量会停止流向看似健康且未返回错误的成员。这通常发生在负载较重的情况下,这会导致性能问题,因为一台服务器正在处理所有请求。

相关配置:

<Proxy balancer://cluster1>
    BalancerMember http://iis1:80 route=2 timeout=45 keepAlive=On
    BalancerMember http://iis2:80 route=1 timeout=45 keepAlive=On
    ProxySet stickysession=ROUTEID
</Proxy>

【问题讨论】:

  • 输入您的LogLevel debug 并重新开始您的测试。一名成员在负载下的响应速度不能足够快。如果你真的需要keepAlive,也可以在这里验证httpd.apache.org/docs/2.4/mod/mod_proxy.html。大多数没有。然后监视您的 IIS 服务器,看看它们是否响应足够快,是否有足够的资源和可用连接,...
  • 谢谢你的提示,我明天试试。值得注意的是,当这种情况发生时,停止获取流量的 IIS 服务器上的负载不到总 CPU 的 10%、40% 的内存,并且网络流量可以忽略不计。
  • 好的。我提到它是因为我遇到了类似的情况,后端的 Tomcat 服务器几乎没有做任何事情,但那是因为它们被配置为小响应。他们只有 20 个线程,http 配置了数百个。

标签: apache httpd.conf mod-proxy mod-proxy-balancer


【解决方案1】:

想通了 - 这是因为我们在硬件负载平衡器和 apache 平衡器配置上都使用了粘性会话。因此,当我们使用 jMeter 运行负载测试时,所有流量都流向一台服务器。我希望这会有所帮助。

【讨论】:

  • 嗨。你是怎么解决的?你能展示你工作的粘性会话配置吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多