2013-08-01 43 views
0

我們在已移至運行Cloud Linux的服務器的網站上使用舊版本的TinyMCE(MoxieCode)的ImageManager。如何減少ImageManager或php對虛擬內存的使用

不幸的是,我們的託管沒有通知我們,對於1,048,576 KB的每個帳戶都存在嚴格的虛擬內存限制,這在以前的服務器上並不存在。

聽起來好像很多,但ImageManager現在隨機產生內部服務器錯誤500,並且隨機選擇每六個縮略圖中只有一個縮略圖成功加載。

在服務器錯誤日誌中,我發現以下消息頻繁地重複出現,不同的index.php在不同的文件夾中,大多在圖像管理器/流文件夾中,但也在語言文件夾中,js文件夾和rpc文件夾:

無法分配內存:無法創建子進程中:/ opt/suphp/sbin目錄/ suphp

你瞧,如果我刷新頁面的cPanel的網站中,我目前正在刷新ImageManager,我可以看到虛擬內存使用量已達到1,048,576 KB。 (通常它遠低於10%)

我有些困惑,爲什麼加載一個主題,一些樣式表,一個語言包和六個縮略圖會需要這麼大的內存。

尤其是我從phpinfo可以看到output_buffering被設置爲0,ob_start在ImageManager代碼中的任何地方都沒有被調用。

我想也許縮略圖是從頭開始創建的,而不是從mcith文件夾加載,但事實並非如此,因爲我可以從縮略圖文件的日期中看到。

事實上,如果我刪除了縮略圖,那麼這個東西會完全掛起(thumbnail.auto_generate設置爲true)。

當然,我們可以升級到我們在其他網站上使用的最新ImageManager(現在稱爲MoxieManager),並且工作正常,但由於用戶界面和會話認證發生了顯着變化,這會涉及很多的編碼和再培訓客戶,他們並不真正想要升級。

如果任何人有一個想法如何解決這個問題,將不勝感激。

+0

看來這是服務器上的一些主配置問題,我們的主機現在已經解決了。 – clayRay

回答

0

你能做的最好的方法是使用下面的語句中的ImageManager的源代碼,每個看起來可能吃了你的記憶

error_log("current memory usage: ".memory_get_usage()." on line: ".__LINE__); 

一旦你找到了車線(S)線後,您可以開始尋找替代品