[PHP] Laravel 依賴注入使用不當引起的內存溢出


 

業務邏輯:

正常在 controller 方法的參數中注入某個類,方法中使用這個類時發生內存超出提示。

 

分析:

過往顯示,正常使用依賴注入是不存在問題的,那么很有可能是哪里發生了循環引用,導致一直請求某個操作而消耗內存。

 

排查:

業務邏輯沒有任何問題。

在定義路由時,該路由指定了某個中間件,需要排查中間件的 handle 實現。

handle 中只做了一件事,檢測當某個條件不滿足時會調用 return app(Controller::class)->returnValue();

我們知道 app() 中的 make 方法是解析依賴注入的源頭。

那么,你知道在中間件中為什么會引發內存溢出嗎 ?

 

解決方案:

中間件拋異常,再對異常統一處理。

 

Link:https://www.cnblogs.com/farwish/p/12233103.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM