Python 用芹菜盛满烧瓶
我有一个简单的flask restful API,我想在其中作为芹菜任务执行请求,因为一些端点需要大量的执行时间 main.py:Python 用芹菜盛满烧瓶,python,api,celery,flask-restful,Python,Api,Celery,Flask Restful,我有一个简单的flask restful API,我想在其中作为芹菜任务执行请求,因为一些端点需要大量的执行时间 main.py: from flask import Flask from flask_restful import Api from flask_celery import make_celery app = Flask(__name__) app.config['CELERY_BROKER_URL'] = 'redis://localhost:6379/0', app.conf
from flask import Flask
from flask_restful import Api
from flask_celery import make_celery
app = Flask(__name__)
app.config['CELERY_BROKER_URL'] = 'redis://localhost:6379/0',
app.config['CELERY_RESULT_BACKEND'] = 'redis://localhost:6379/0'
celery = make_celery(app)
api = Api(app)
api.add_resource(someResource, '/someendpoint/')
if __name__ == '__main__':
app.run(debug=True)
使用make_芹菜.py:
from celery import Celery
def make_celery(app):
celery = Celery(
app.import_name,
backend=app.config['CELERY_RESULT_BACKEND'],
broker=app.config['CELERY_BROKER_URL']
)
celery.conf.update(app.config)
class ContextTask(celery.Task):
def __call__(self, *args, **kwargs):
with app.app_context():
return self.run(*args, **kwargs)
celery.Task = ContextTask
return celery
现在我想定义我在Resource.py中定义的资源是芹菜任务:
class Cost(Resource):
def get(self):
result = some_code
return result
让get方法成为芹菜任务最方便的方法是什么
非常感谢 我有同样的问题。你有这方面的线索吗?