Python Flask多次运行相同的请求

Python Flask多次运行相同的请求,python,http,flask,gunicorn,Python,Http,Flask,Gunicorn,我有一个Flask/Gunicorn后端运行机器学习过程,大约需要20分钟。有一个post请求触发函数并返回输出 当我通过cURL运行请求时,一切正常,但是当在前端从浏览器运行相同的请求时,在请求发出几分钟后,相同的烧瓶过程再次启动,而没有终止第一个过程,在这里我同时运行两个请求,这增加了运行时间 是什么原因造成的?我知道cURL不做初始选项请求,选项是否可能在POST到达之前触发流程?您是否有机会使用Chrome?您是否尝试查看网络选项卡以查看是否有超时?不应在请求上下文中处理长时间运行的后台

我有一个Flask/Gunicorn后端运行机器学习过程,大约需要20分钟。有一个post请求触发函数并返回输出

当我通过cURL运行请求时,一切正常,但是当在前端从浏览器运行相同的请求时,在请求发出几分钟后,相同的烧瓶过程再次启动,而没有终止第一个过程,在这里我同时运行两个请求,这增加了运行时间


是什么原因造成的?我知道cURL不做初始选项请求,选项是否可能在POST到达之前触发流程?

您是否有机会使用Chrome?您是否尝试查看网络选项卡以查看是否有超时?不应在请求上下文中处理长时间运行的后台任务。如果你不想要一个可伸缩的应用程序,你可以使用redis或flask executor之类的工作程序。它一直在等待POST-I将所有超时设置为0。我将在未来转向更具可扩展性的解决方案,但现在,我需要一个简单的临时解决方案。我可能会去看看Redis。Thanks@roganjosh我同时尝试了Firefox和Chrome——它出现在bothI中。如果你有一个长时间运行的请求,我不认为有一个干净的方法来解决这个问题,因为如果没有得到初始响应,浏览器会自动重新发出请求。这就是为什么@Luv的建议很重要的原因。你是否有机会使用Chrome?你有没有试过查看网络标签看看是否有超时?不应在请求上下文中处理长时间运行的后台任务。如果你不想要一个可伸缩的应用程序,你可以使用redis或flask executor之类的工作程序。它一直在等待POST-I将所有超时设置为0。我将在未来转向更具可扩展性的解决方案,但现在,我需要一个简单的临时解决方案。我可能会去看看Redis。Thanks@roganjosh我同时尝试了Firefox和Chrome——它出现在bothI中。如果你有一个长时间运行的请求,我不认为有一个干净的方法来解决这个问题,因为如果没有得到初始响应,浏览器会自动重新发出请求。这就是为什么@Luv的建议很重要