Apache 状态“当前正在处理 150 个请求,0 个空闲工作者”

Apache 状态“当前正在处理 150 个请求,0 个空闲工作者”

当达到“当前正在处理 150 个请求,0 个空闲工作者”条件时,我的 Apache 服务器记分板状态如下所示。

--日志跟踪---

本地主机的 Apache 服务器状态(通过 127.0.0.1)

服务器版本:Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g 服务器 MPM:worker 服务器构建时间:2020-08-12T21:35:50 __________________________________________________________________

父服务器配置代数:3 父服务器 MPM 代数:2 服务器正常运行时间:1 天 9 小时 19 分钟 58 秒 服务器负载:0.85 0.93 1.04 总访问量:931102 - 总流量:17.8 GB CPU 使用率:u3289.89 s950.31 cu0 cs0 - 3.53% CPU 负载 7.76 请求/秒 - 155.9 kB/秒 - 20.1 kB/请求 当前正在处理 150 个请求,0 个空闲工作者

RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR

--日志跟踪结束--

问题)我们使用 Apache MPM 模块,以下是工作者设置。

文件: /etc/apache2/mods-enabled/worker.conf

服务器限制 25 启动服务器 2 线程限制 64 最大客户端 150 最小备用线程 25 最大备用线程 75 每个子线程 25 每个子线程最大请求数 0 监听后备日志 511

我们发现 MaxClients 已满(150),这是一个值得关注的问题,并试图找出为什么 MaxClient 会临时变成 150。

我验证了应用程序日志(bitbucket),没有在 Java 应用程序中发现问题。

现在的问题是如何调试这个/找到根本原因,为什么线程处于“读取请求”状态。

以下是 Ubuntu 服务器中已加载模块的列表。

已加载的模块:core_module(静态)so_module(静态)watchdog_module(静态)http_module(静态)log_config_module(静态)logio_module(静态)version_module(静态)unixd_module(静态)access_compat_module(共享)alias_module(共享)auth_basic_module(共享)authn_core_module(共享)authn_file_module(共享)authz_core_module(共享)authz_groupfile_module(共享)authz_host_module(共享)authz_user_module(共享)autoindex_module(共享)cgid_module(共享)dav_module(共享)dav_fs_module(共享)deflate_module(共享)dir_module(共享)env_module(共享)filter_module(共享)headers_module(共享)mime_module(共享)negotiation_module (共享) proxy_module (共享) proxy_http_module (共享) reqtimeout_module (共享) rewrite_module (共享) setenvif_module (共享) mod_shib (共享) socache_shmcb_module (共享) ssl_module (共享) status_module (共享) mpm_worker_module (共享)

寻求这方面的指导,以找出为什么线程达到 MaxClients (150) 以及线程处于“读取请求”状态约 22 秒。

相关内容