Apache Server 2.4.57 / 增加接受的最大连接数/请求数并检查并发进程数

Apache Server 2.4.57 / 增加接受的最大连接数/请求数并检查并发进程数

我们正在使用以下配置,据我所知,该配置可以并发执行 8000 个请求/进程。

Apache 服务器版本:2.4.57,服务器 MPM:事件

<IfModule mpm_worker_module>
    ServerLimit              250
    StartServers              10
    MinSpareThreads           75
    MaxSpareThreads          250
    ThreadLimit               64
    ThreadsPerChild           32
    MaxRequestWorkers       8000
    MaxConnectionsPerChild 10000
</IfModule>

要将此值从 8000 增加到 16000,将“MaxRequestWorkers”参数设置为 16000 是否足够,还是这些值取决于此配置中的其他参数?

如果我们想检查,我们如何才能看到“MaxRequestWorkers”值的当前数量?

我认为当传入请求增加时,Apache Server 会遇到瓶颈。服务器的 CPU 和内存使用率没有问题。我想增加我们可以接受的最大请求数和我们可以处理的最大进程数。

而且当我们在 Apache Server 端增加这些值时,我们应该在 limits.conf 文件中做哪些更改?我认为两者是互相影响的。

[root@servername ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 95053
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 95053
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
[root@servername ~]#

答案1

增加时的通常做法MaxRequestWorkers是也增加ServerLimit。这将为在进程间分配请求提供“空间”。

但正如评论所说,您不希望单台机器处理如此大量的请求。同时增加值意味着需要更多 CPU 和更多 RAM。

根据您的输入,您应该将文件处理程序的数量增加到(至少)20480 + 其他,以满足软件和操作系统的要求。

相关内容