[英]Laravel Queue Worker Memory Footprint is Too Big :/
我正在運行一個連接到六個MQ的隊列工作器。 當它被啟動時,它消耗25MB的RAM。 即隊列中沒有任務,即工作人員處於睡眠狀態。 我在所有項目中使用Larvel,這個特定的項目純粹是為隊列工作者(即沒有Web訪問的微服務)構建的。
我想減少內存占用,但更重要的是我想知道內存消耗的位置。 我正在使用PHP 7.1所以現在xhprof不再是配置文件內存我必須找到一個替代方案。
我知道Lumen意味着消耗更少的內存,至少看起來Lumen是Laravel的一個子集 。 是否可以“關閉”我的Laravel應用程序的部分,以便模仿流明? 我嘗試在config / app.php $providers
數組中注釋掉行,但內存消耗似乎沒有太大的差別(我的測量值約為1MB)。
TL;博士; 如何“調整”Laravel內存占用空間? 如何將Laravel變成Lumen?
謝謝
編輯:圖片或它沒有發生。 RES列的AFAIK以千字節為單位,因此〜39MB的內存。
這可能有助於減少隊列中使用的內存。
url: Laravel隊列 - 資源注意事項
資源考慮因素
守護程序隊列工作程序在處理每個作業之前不會“重新啟動”框架。 因此,您應該在每個作業完成后釋放任何繁重的資源。 例如,如果您使用GD庫進行圖像處理,則在完成后應使用imagedestroy
釋放內存。
您是否檢查了php.ini並關閉了您的工作人員和其余代碼庫不需要的任何擴展。
您可以為此worker創建一個自定義php.ini,並通過命令行參數提供它
php -c queue_php.ini工匠隊列:工作。
不要忘記,您在那里看到的內存占用所有PHP執行,因此包括JIT編譯器和任何加載的擴展以及它們加載的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.