2012-09-06 38 views
0

我正在使用PHP-FPM通过fastcgi向nginx提供动态内容。除了PHP-FPM proc正在使用这么多的内存以外,一切正常。根据新的遗迹进程监视器PHP-FPM有6个进程正在运行,并且他们使用的是220+ MB。对我来说不正常?可能是什么问题呢?使用大量内存的PHP-FPM

回答

1

几件事情要检查是/提示在开发环境中进行调试:

  • 难道你的PHP memory_limit的设置为35M,看看PHP错误了呢?
  • 是否有任何大型数据库查询正在运行?
  • 您是否在使用PHP的APC,您的共享内存大小(shm)是什么?
  • 如果您熟悉xDebug(http://xdebug.org/)。您可以使用xDebug分析器(http://xdebug.org/docs/profiler)查看正在使用的内存。这是你最好的选择IMO。
  • PHP-FPM允许您设置一个最大请求参数(pm.max_requests),它将在一定数量的请求后重新启动子进程。注意将其设置为低可能会导致性能下降,并且在负载下会出现奇怪的行为。

说实话,每个进程37M是高的,但是我已经看到像Magento这样的应用程序已经接近,所以可能没有问题。希望有所帮助。