看板 Python 關於我們 聯絡資訊
各位大大好,小弟在使用uwsgi啟動flask時遇到了一些問題 想請教各位大大,看是否有人也遇過這問題 我用flask寫了一隻API,裡面會讀進機器學習的模型,存在記憶體中, 如果直接用flask自己啟動的話,呼叫這隻API會得到回應, 但如果今天我用uwsgi啟動flask話,呼叫服務的時候, 運算到某個地方就會他就會卡住了,也不是錯誤, 用uwsgitop去看worker的狀況時,status會一直顯示busy, 但仍然沒辦法得到回應,不知道是不是因為worker有被限制memory的關係, 我有在uwsgi的設定檔裡面設定limit-as跟reload-on-rss, 已經調到跟機器本身的記憶體一樣大了還是會有這個問題, 但如果用flask自己起就沒事, 我uwsgi裡設定workers數量最少4個,會看情況增加最多到10個, 並且master設定為True 想請各位大大幫忙解惑 這已經困擾我很久了 麻煩各位大大了,謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.158.35.172 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1553183142.A.27E.html ※ 編輯: michael3941 (114.136.235.2), 03/21/2019 23:52:36 ※ 編輯: michael3941 (114.136.235.2), 03/21/2019 23:53:20
TuCH: 我用gunicorn 如果code裡面有用到multiprocess 也有同樣的03/22 01:21
TuCH: 問題03/22 01:21
sean50301: 你可以試試看workers=1會不會動03/22 02:52
Workers=1一樣不行,但是用lazy-apps後就可以了@@ 好神奇,想問用lazy-apps會有什麼問題嗎? 有看它的解釋但還是有點不懂 ※ 編輯: michael3941 (114.136.235.2), 03/22/2019 09:19:45
kenduest: 若有用到 threading 記得 uwsgi 開 --enable-threads 03/22 19:55