celery mysql flask_在flask应用中使用celery任务队列,celery队列无法正常启动

最近在写一个flask应用,想使用celery做任务队列,就去flask官网上找了样例程序,然后复制到本机上执行了一下,结果celery没有正常启动.

只有一个源文件test.py,rabbitmq已配置并正常启动.

代码如下:

from flask import Flask

from celery import Celery

def make_celery(app):

celery = Celery(app.import_name, broker=app.config['CELERY_BROKER_URL'], backend=app.config['CELERY_RESULT_BACKEND'])

celery.conf.update(app.config)

TaskBase = celery.Task

class ContextTask(TaskBase):

abstract = True

def __call__(self, *args, **kwargs):

with app.app_context():

return TaskBase.__call__(self, *args, **kwargs)

celery.Task = ContextTask

return celery

app = Flask(__name__)

app.config.update(

CELERY_BROKER_URL='amqp://guest@localhost//',

CELERY_RESULT_BACKEND='amqp://guest@localhost//'

)

celery = make_celery(app)

@celery.task()

def add_together(a, b):

return a + b

result = add_together.delay(23, 42)

result.wait()

差不多就是样例代码直接拷贝下来用了.

然后我在当前目录下执行celery -A test worker --loglevel=info和celery -A test.celery worker --loglevel=info之后阻塞,同时没有任何提示.

我另外打开一个终端,在这个目录下执行python test.py之后发生阻塞.用pdb调试发现阻塞在最后一行result.wait().

请问我的配置过程出现什么问题了?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值