引入负载均衡器后,Apache 插槽已耗尽

引入负载均衡器后,Apache 插槽已耗尽

我有一个如下所示的 Web 应用程序:

WEB SERVER (PHP, Apache) -> MYSQL NODE

这项功能运行完美,没有任何问题,并且已经运行了很长时间。

但是,当我引入负载平衡器(我使用了 HAProxy 和 ProxySQL,两者的结果行为相同)来管理对数据库集群的请求时,我遇到了 Apache 停顿的问题。

负载平衡器与 Apache 一起安装在 Web 服务器上,并通过系统的环回设备进行访问。具体来说,Web 应用程序进行数据库调用,127.0.0.1:3306而这正是负载平衡器监听的地方。

为了简化事情,这是我的新设置:

[WEB SERVER (PHP, Apache) -> LOAD BALANCER] -> MYSQL NODE

当负载变重时,我看到的是这样的:

PROMPT~] apachectl status ... ... WWWWWWWWWWWWWWWWWRWWRRWWWWWWWWWWWWWRWRWWWWWWWWWWRWWWWWRWWWWWWWWR WWWWWWWWWWWWWWWWWWWWWWWWWWRWWRWWWWWWWWRWWWWWWWWWWCWWWWWRWWWWWWWW WWWWWWWWRWWWWRWRWWRRWWWCWWWRWWWWWWWWRWWWWWWWWWWWWWWRWWWRWWWWWWWW WWWWWWWWWWRWRWWCWWWWWWRRWRWWWWRCWWWWWWWWWWWRWWWWWWWRWRWWWW

事实上,这种情况发生在多个负载均衡器上,这表明该问题更为普遍,并且可能与操作系统有关。

我没有看到 Apache、负载平衡器或数据库报告任何错误。

CPU 和内存等操作系统指标似乎没有问题。我确实在问题发生时看到以下指标出现峰值:

  1. TCP 套接字数
  2. Apache 进程数

我觉得我可能在这里遗漏了一些基本知识,如果能提供任何建议我将非常感激。

谢谢

相关内容