我有2個服務器:我的本地服務器和遠程生產服務器。他們有基本相同的配置:Ubuntu 10.10,Apache 2,PHP 5.3,PHP-APC,MYsql等。我也有兩個服務器上的Web應用程序的副本,這裏是PHP的問題:PHP生產服務器上的內存尖峯
在我的本地服務器webapp僅使用〜4 MB的內存,但在我的生產服務器上,內存使用率高達50 MB,沒有理由。我試圖運行memory_get_peak_usage()函數來獲取webapp執行的不同階段的內存使用情況,我發現在生產服務器上,內存使用類似於class_exists()的函數調用時,內存峯值從0.7到49 MB。
可能是什麼問題?
坦克。
你確定這是導致內存消耗瘋狂的函數調用嗎?嘗試將同一行放入單個PHP文件並進行驗證。 – soulmerge
現在我不能這樣做,因爲它正在運行,但我會盡快嘗試。我確實試着用這個函數註釋掉內存,內存使用量降到了正常的數量。總體而言,它保持在同一水平,因爲還有一些其他地方使用了相似的功能。 –
好的,我試圖在它自己上運行class_exists(),它並沒有像在web應用程序中那樣佔用更多的內存。爲什麼......不知道。 –