[問題] flask搭配uwsgi平行處理的問題?

作者: energyaxd (君)   2021-12-22 17:02:18
最近在寫flask
有個功能需要鎖住相關的任務
比如座標1,1正在執行任務
任務也需要一點時間才能完成
如果送進座標1,x的任務都必須等1,1完成
其他2,y都可以馬上執行
本來是自己寫了個上鎖的class
但用了uwsgi後才發現
每個worker的物件都不一樣?
或是說存在記憶體全域的list dict都是
這個worker鎖了1其他worker看卻沒有
通常這種情形該怎麼處理?
還是我有什麼部分概念搞錯了?
感謝各位救救菜雞
作者: TitanEric (泰坦)   2021-12-22 17:25:00
share memory試試?
作者: lycantrope (阿寬)   2021-12-22 17:25:00
不知道...你怎麼鎖...只能.....~"~uwsgi應該用Cache or Queue?
作者: f496328mm (為什麼會流淚)   2021-12-22 18:48:00
用 redis 紀錄 status如果你後面墊一層 queue,那更好解
作者: legendmtg (CLANNAD)   2021-12-22 23:18:00
https://tinyurl.com/y692ju4k 用這個就可以了吧?不然最簡單就建file啊 也有現成的可以用
作者: Sunal (SSSSSSSSSSSSSSSSSSSSSSS)   2021-12-23 00:21:00
不同程序本來就不共享記憶體的,用redias吧
作者: yoyo178134 (安安尼瑪)   2021-12-24 23:26:00
單一worker 用mutiprocess跑吧

Links booklink

Contact Us: admin [ a t ] ucptt.com