Flask 定了2中上下文,来实现机遇线程\协程的,wsgi服务的请求(request.session)和存储(g,current_app )过程,通过栈来完成不同线程和协程的上下文切换,在与celery相结合处理异步任务时,需要保证异步任务在同一个上下文中执行,需要对celery进行重构, 避免出现: ile "/opt/xAssets/venv/lib/python3.6/site-packages/celery/app/trace.py", line 412, in trace_
from json import dumps from flask import Response from flask_api import status from protocol.errors_pb2 import * class ErrorResponse(Response): def __init__(self, err_code, err_msg=''): result = dumps(dict(code=err_code, msg=err_msg)) Response.__init
Flask 与 Celery 在 windows 下的集成问题 所有的 Web 框架内部的视图中不适合执行需要长时间运行的任务,包括 Flask .Django 等.这类型的任务会阻塞 Web 的响应,导致用户在等待执行结果,对用户不友好.发送邮件通知.数据统计等任务,执行时间长,应该自动或由用户触发,然后在后台执行. 后台执行的方式有多种,多线程.多进程都可以.但要注意,一般不要直接在 Web 框架中触发多线程任务,因为无法确定 web 服务器会否进行回收线程导致任务中止,不够可靠.可以通过独