在 Apache 上提供大文件时内存占用率较高

在 Apache 上提供大文件时内存占用率较高

我在 AlmaLinux 8 上使用 Apache 2.4。当我发布一个数百 GB 的文件时,如果有人开始下载它,Apache RAM 使用量(尤其是 VIRT)就会变得越来越大,开始交换,最终导致崩溃。为什么会发生这种情况,有什么方法可以防止这种情况发生?谢谢。

这是ps:

ps -eF | grep httpd
root         933       1  0 73036  7604   0 07:54 ?        00:00:03 /usr/sbin/httpd -DFOREGROUND
apache      1372     933  0 76259  4552   0 07:54 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache      1373     933  0 76603  5068   1 07:54 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache      1374     933 11 866436 63304  0 07:54 ?        01:50:24 /usr/sbin/httpd -DFOREGROUND
apache     12818     933  0 516413 22520  1 10:20 ?        00:01:53 /usr/sbin/httpd -DFOREGROUND

这是顶部(由 apache 过滤):

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1374 apache    20   0 3384.5m  57.2m   6.1m S  14.2   3.9 110:45.56 httpd
   1372 apache    20   0  297.9m   4.4m   3.1m S   0.0   0.3   0:00.00 httpd
   1373 apache    20   0  299.2m   4.9m   3.6m S   0.0   0.3   0:00.57 httpd
  12818 apache    20   0 2017.2m  21.8m   6.8m S   0.0   1.5   1:53.54 httpd

这是运行 12 小时之后的照片。

相关内容