我們有一箇舊的Facebook應用程序,運行流暢寫在本地PHP。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
也試過塔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還是作曲家中尋找它?
如果需要,我可以提供代碼示例。謝謝。
步驟通過與調試器的應用程序。在這些速率下,應該很明顯的是,連續100次被稱爲/實例化的原因並不存在。 –