2015-11-03 89 views
0

我創建了一個web應用程序來使用python燒瓶框架處理大量數據。我創建了一個表單,並在用戶提交表單時獲取數據消費程序的輸入參數。該程序需要大約20-30分鐘才能完成,我想在網頁上向用戶顯示該程序的狀態。在燒瓶程序中顯示使用Ajax的進度

我該如何做到這一點?

用戶提交數據後,是否需要在單獨的線程上運行程序並重定向到其他線程上的成功頁面?如何在程序和POST頁面之間進行通信?如何連續刷新頁面?

在此先感謝。

回答

1

對於壽命太長而無法完全存在於請求/響應週期內的任務,任務隊列是一個不錯的選擇。退房celery

當任務完成後,您可以將任務串起來更新應用程序的狀態,然後使用setInterval()clearInterval()瀏覽器API輪詢您的應用程序。

1

幾個月前我碰巧做過同樣的事情。代碼是here。基本上你使用Celery + rabbitmq在後臺運行你的任務。希望能幫助到你。