【问题标题】:High memory usage nginx (reverse proxy) on new vps新 vps 上的高内存使用 nginx(反向代理)
【发布时间】:2015-11-11 11:56:10
【问题描述】:

我最近使用 custombuild 2.0、Apache 2.4 和 nginx 反向代理、php-fpm 5.6(和 7)、mpm worker、MariaDB 10.1、mod_security 和 csf 设置了一个新的 vps(Cent OS7)。

由于某种原因,Nginx 使用 675mb 内存 (http://prntscr.com/91bu6t),服务器上只有 1 (1mb) 个网站和 1 个主要由图片组成的轻量级 (300mb) 网站。 当我重新启动 nginx 时,一段时间后内存使用量仍然约为 175mb,再次回到 +/- 675mb。 我不认为这是正常的。配置文件似乎没问题。 我在 nginx 日志中看不到太多,除了这些行返回:

2015/11/10 21:20:41 [通知] 24971#0: nginx 的 ModSecurity (稳定)/2.9.0 (http://www.modsecurity.org/) 已配置。 2015/11/10 21:20:41 [通知] 24971#0:ModSecurity:APR 编译版本 =“1.5.2”; 加载版本="1.5.2" 2015/11/10 21:20:41 [通知] 24971#0: ModSecurity:PCRE编译版本=“8.20”;加载版本="8.20 2011-10-21" 2015/11/10 21:20:41 [通知] 24971#0:ModSecurity:LIBXML 编译版本="2.9.2" 2015/11/10 21:20:41 [通知] 24971#0: ModSecurity:状态引擎当前被禁用,通过设置启用它 SecStatusEngine 开启。

这些行是否表明存在问题? (谷歌并没有让我变得更聪明..)

主要是,为什么 nginx 内存使用率如此之高而服务器上的运行却如此之少?该怎么办?

谢谢!

【问题讨论】:

    标签: php nginx reverse-proxy centos7


    【解决方案1】:

    仅根据管理面板的输出很难判断,但可能是服务器/nginx 正在缓存大量内存以提高性能。如果您有 shell 访问权限,您可以使用例如top 命令查看更多详细信息。

    如果缓存是这种情况,那没有什么问题,它只是优化了内存使用而不是磁盘使用。

    【讨论】:

    • 我可以访问。我跑上头了。我应该寻找什么?而且通知不用担心?
    • @Peps 关于 ModSecurity 的消息看起来很正常。关于topmem(第 4 行?)行会准确显示正在使用的内容、免费的内容以及缓存的内容。
    • 它显示:top - 14:52:53 up 2:45, 1 个用户,平均负载:0.00, 0.01, 0.05 任务:总共 181 个,1 个正在运行,180 个睡眠,0 个停止,0 个僵尸%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 总共 3882636, 2558456 free, 438924 used, 885256 buff/cache KiB Swap: 总共 1048572 , 1048572 免费,0 已使用。 3234320 可用内存
    • @Peps 假设内存编号后面有一个k,您可以看到整个服务器/所有进程总共只使用了大约 400Mb。超过 800Mb 被缓存,并没有真正使用;它在需要时可用,但它已经加载了您可能要使用的东西。我猜这个数字会随着时间的推移而增加更多,优化服务器的性能。
    • 0,98gb 内存使用量是否仍然“正常”?见prntscr.com/93f9na自从我打开这个问题以来,服务器没有改变。
    猜你喜欢
    • 1970-01-01
    • 2019-06-05
    • 2015-01-04
    • 2020-11-02
    • 1970-01-01
    • 2021-01-24
    • 2020-03-24
    • 2018-01-20
    • 2020-07-11
    相关资源
    最近更新 更多