簡體   English   中英

如何使用 Heroku 防止我的 Flask 應用程序超時

[英]How do I prevent my Flask App from timing out using Heroku

創建 flask 應用程序,用戶可以在其中發送 excel 文件並將返回更新的 excel 文件。

問題有時是更新 excel 文件需要很長時間,並且 heroku 將超時,因為我沒有返回任何內容。

使用 html forms,發布請求

我想發送狀態碼,這樣它就可以起到確認的作用並防止超時。

然后,一旦文件完成更新,應用程序就會為用戶下載文件。 (將使用作業隊列)

由於我需要為 1 條路線返回 2 件東西,它是如何工作的?

需要使用 send_from_directory() 返回狀態碼和文件

Heroku 上的 30 秒超時是固定的,您無法避免。 在可擴展的應用程序上長時間阻塞進程也不是一個好主意。

你可以使用一些東西在不同的進程上執行你的慢任務,比如 python-rq。 您有關於如何在 Heroku https://python-rq.org/patterns/上使用它的文檔

考慮到 Heroku 有一個臨時存儲( https://devcenter.heroku.com/articles/dynos#ephemeral-filesystem ,所以你不能保存它) 將您的信息放在 redis 或外部存儲(如 S3)上。

暫無
暫無

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

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