![](/img/trans.png)
[英]Is it possible to mount an instance of FastAPI onto a Flask application?
[英]Store references to Dask Futures in a Flask/FastAPI Application
我正在構建一個 FastAPI 應用程序,它有一個端點來觸發 Dask 計算。 API 端點將此調用發送到 Dask 調度程序並僅返回Future
的鍵。
trigger
x = client.submit
(
function_name,
arg1,
arg2
)
return x.key
我還有另外兩個端點來檢索任務的狀態和結果,它們將key
作為輸入。
status
status = Future(key=key, client=client).status
return status
result
result = Future(key=key, client=client).result()
return result
當然,這樣一來,我在trigger
返回后失去了對未來的引用,在這種情況下,Dask 不再計算它了。 因此,即使將密鑰提供給客戶端,我們也會永遠處於pending
狀態。
我現在正在做的是將 Future object 的引用存儲為應用程序中的 python 字典,它可以工作。 但理想情況下,我希望我的 API 應用程序是無狀態的。 什么會在這個應用程序之外存儲這些期貨? Python 中是否有很好的緩存庫可以存儲 Python 對象(帶有引用)?
嘗試使用 Flask + Celery 來處理后台 Dask 計算。 以下是幾個鏈接供參考:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.