2012-03-29 32 views
2

我遇到了我的Magento 1.6.1.0社區版商店的問題。它試圖每隔15秒左右分配大約半個千兆字節的內存。不幸的是該錯誤信息是不是非常有幫助,你可以看到如下:Magento試圖分配過量的內存

[29-Mar-2012 07:36:38] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 431187952 bytes) in Unknown on line 0 
[29-Mar-2012 07:36:40] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 244111344 bytes) in Unknown on line 0 
[29-Mar-2012 07:36:54] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 523921392 bytes) in Unknown on line 0 
[29-Mar-2012 07:37:07] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 534718448 bytes) in Unknown on line 0 

跟我談過的我主持這件事,而他們說的128Mb的內存限制是運行一個完整的Magento有點低(我們打算在升級到更加寬鬆的包時)這些錯誤表明Magento有些問題,而不是主機,因爲我確信這不是正常行爲。我無法改變我的內存限制從128Mb這個包。

即使在我可以確定沒有人訪問該網站的時候,它仍會持續發生。這讓我懷疑它是否與Magento運行的cron作業有關。

有沒有人有關於如何幫助追蹤這個問題的任何提示?或者有人遇到類似的事情嗎?

+0

老實說這聽起來並不像太多的Magento到被綁定分配。這是第一個訂單的資源。你真的不能像你的那樣在更低的RAM環境下運行它。 – Stuart 2012-03-29 07:01:29

+0

自從我們第一次安裝以來,這個錯誤還沒有出現過,恐怕我不能告訴你它是什麼時候開始的,因爲日誌截斷了。有沒有一種方法可以確切地說明Magento的哪個部分試圖分配所有這些內存?錯誤消息根本沒有幫助。 – MarkFl 2012-03-29 07:17:32

+0

你可以通過像webgrind這樣的分析器來運行它嗎?這會告訴你你最大的資源。 https://github.com/jokkedk/webgrind – Stuart 2012-03-29 07:20:07

回答

4

安裝任何軟件之前,你應該概述系統要求:

http://www.magentocommerce.com/system-requirements

和Magento的具體規定有

Memory_limit no less than 256Mb (preferably 512)

+0

儘管我非常尊重,但我相當確定Magento不應該在一個塊中分配那麼多的內存,這看起來不像Magento內存不足從嘗試分配少量內存的過度使用中,嘗試將最大600Mb分配爲一個大塊。 – MarkFl 2012-03-29 20:30:17

+1

@MarkFl **我無法將此內存限制從128Mb更改爲此包。**此託管服務提供商浪費時間。鑑於他們不會允許更改Magento要求的最小內存(256M),他們可能還有其他問題導致Magento出現重大問題。你的故事經常在Magento的Magento表單上重複出現,Anton的回覆非常標準。首先找到一個支持Magento的託管服務提供商,很多問題都會消失。拒絕聽取這個建議會讓你追逐虛幻。 – 2012-03-30 00:59:39

+0

@Fiasco實驗室我來到這裏發佈: '[29-Mar-2012 07:37:07] PHP致命錯誤:536870912字節允許的內存大小用盡(試圖分配534718448字節)在未知的行0上 你的回答會不一樣嗎? Magento仍然不應該一次分配半個千兆字節的內存。 – MarkFl 2012-04-02 18:54:38