我们有一个旧的 facebook 应用程序,运行流畅,用原生 php 编写。
本月我们决定在 zend-framework 2 中重写它。昨天,在切换到新应用程序后,它使我们的服务器崩溃,并出现大量内存不足的错误。所以我们回到旧的应用程序。
我安装了 xdebug 来分析应用程序。使用 memory_get_peak_usage() 函数我注意到内存使用率很高。
在旧应用程序中,静态页面仅使用 1 mb 内存。但是新的大约在同一页面上使用 7-8 mb。
这是 webgrind 的前两行:
Function Invocation Count Total Self Cost Total Inclusive Cost
Composer\Autoload\ClassLoader->loadClass 224 23.31 47.20
Composer\Autoload\ClassLoader->findFile 224 9.57 10.23
还尝试了 tha apache 的 ab 工具
ab -n 50 -c 5 -C PHPSESSID=SESSIONID http://myhost.com
结果是:
Percentage of the requests served within a certain time (ms)
50% 368
66% 506
75% 601
80% 666
90% 1073
95% 1812
98% 2278
99% 2278
100% 2278 (longest request)
所有这些结果都来自生产服务器而不是本地主机。
单页 7-8 mb 正常吗?如果没有,我该如何减少它?我应该在 zf2 还是作曲家中寻找它?
如果您需要,我可以提供代码示例。谢谢你。