gpt4 book ai didi

python - Flask 和长时间运行的任务

转载 作者:行者123 更新时间:2023-12-01 04:03:30 25 4
gpt4 key购买 nike

我正在使用 Flask 编写一个小型 Web 服务器,它需要执行以下操作:

  1. 在第一个请求时,提供基本页面并启动长时间(15-60 秒)的数据处理任务。数据处理任务查询我无法控制的第二个服务器,更新本地数据库,然后对结果执行一些计算以显示在网页中。
  2. 页面发出多个 AJAX 请求,这些请求都依赖于长任务的部分结果,因此我需要等待处理完成。
  3. 如果对第一页的后续请求是在处理任务正在进行时(甚至此后不久)传入的,那么理想情况下它们会重用前一个请求的结果

我尝试使用flask-cache(特别是SimpleCache),但遇到了一个问题,因为当我真的宁愿保留确切的对象时,缓存似乎会腌制结果。

我想我可以重写我正在缓存的内容以进行pickle,然后实现一个工作线程来进行处理。

是否有更好的方法来处理这种工作流程?

最佳答案

我认为长数据处理的最佳方法是 Celery .

  1. 发送运行任务的请求并接收任务 ID。
  2. 定期发送ajax请求来检查任务进度并接收任务执行结果。

关于python - Flask 和长时间运行的任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36097478/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com