异常的PHP内存消耗

问题描述 投票:0回答:1

我有3台Apache / PHP7服务器在负载均衡器后面运行。 3台服务器中的2台已经运行了好几年了。但是,第三台服务器(最新服务器)存在PHP内存消耗问题。

虽然实时监视服务器,但我注意到同一调用(例如:/ user / login)将使第三台服务器的内存比其他2个服务器多10倍。例如:18%MEM vs 1.2%MEM

当前所有3台服务器都是由ansible构建和管理的,因此所有3台配置应完全相同。但是,在我开始使用ansible之前,已经存在按预期工作的2台服务器,因此可以想象在那些不受ansible管理的服务器上设置了一个(或多个)配置。

所有3台服务器都运行完全相同的代码库。当前所有3台服务器都在生产中运行。

第三台服务器已被重建(完全是新的虚拟机)多次,但始终具有与以前完全相同的问题。

我用尽了所有想法,我将不胜感激。

注意:我已经尝试过使用内存跟踪工具,但是由于它们具有较高的侵入性,因此我很难将它们启动并在生产中运行。

php amazon-ec2 php-7 memory-consumption
1个回答
0
投票

因此可以想象在那些不受ansible管理的服务器上设置了一个(或多个)配置。

从那里开始。

收集有关的信息:

  • PHP版本
    • 和配置
  • Linux内核
    • 和配置(例如交换)
  • libc版本
  • Web服务器版本
    • 和配置

假设这三台服务器具有相同的内存量并且运行相同的进程,则任何差异只能源于这些参数。

您也可以尝试执行示例命令行脚本,以查看内存分配异常是否也在那里出现。无论发生什么,您都会学到一些东西。并且如果它也出现在脚本中,则只需一次通过strace或Valgrind运行一个PHP二进制实例即可。

© www.soinside.com 2019 - 2024. All rights reserved.