如何解决“ Celery正在接收任务但在执行任务时卡住了”

时间:2019-06-21 03:28:31

标签: python-3.x redis django-rest-framework celery djcelery

我正在从事AI图像处理工作,其中我使用Django rest框架,Python3,tensorflow和keras以及Celery来处理异步任务。我也在使用redis服务器。但是,当我执行芹菜任务时,它正在接收任务但卡在中间。它一直在发生。我正在尝试为Amazon ec2 g3s.xlarge实例提供服务,尽管它在我的本地计算机上运行良好。

我正在尝试将其部署在具有深度学习AMI(linux)版本的Amazon ec2 g3s.xlarge实例中。

@task(name="predict")
def work_out(cow_front_image,cow_back_image):
    return detect_cow_weight(cow_front_image,cow_back_image)

这是一个大项目,不知道如何在此处显示所有代码。

  

我在本地计算机上重复运行良好且非常舒适,并且我使用了我们现有的服务器服务产品之一(生产级)中的所有配置。

我希望执行celery任务,就像我将传递两个图像作为参数,然后它将处理图像并将结果返回他在后台看到的结果。

1 个答案:

答案 0 :(得分:0)

我已解决--pool=solo

 celery -A prodapi worker -l info --without-gossip --without-mingle --without-heartbeat -Ofair --pool=solo