簡體   English   中英

在 Flask/FastAPI 應用程序中存儲對 Dask Futures 的引用

[英]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 對象(帶有引用)?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM