如何在Linux上配置Celery集群

avatar
作者
筋斗云
阅读量:0

在 Linux 上配置 Celery 集群需要以下几个步骤:

  1. 安装 Celery 和相关依赖库:

    使用 pip 安装 Celery 和其他必要的库,例如 Redis(用于消息代理)和 Django(如果你使用 Django 作为后端)。

    pip install celery redis django 
  2. 创建一个新的 Celery 项目或在现有项目中添加 Celery 支持:

    如果你还没有一个项目,可以创建一个新的项目。在项目根目录下创建一个名为 celery.py 的文件,然后在 __init__.py 文件中导入 Celery 实例以确保它是项目的一部分。

    # project/celery.py from __future__ import absolute_import, unicode_literals import os from celery import Celery  os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'project.settings')  app = Celery('project')  app.config_from_object('django.conf:settings', namespace='CELERY')  app.autodiscover_tasks() 
    # project/__init__.py from __future__ import absolute_import, unicode_literals from .celery import app as celery_app  __all__ = ('celery_app',) 
  3. 配置 Celery 和 Redis:

    在 Django 的 settings.py 文件中,添加以下配置以设置 Celery 和 Redis:

    CELERY_BROKER_URL = 'redis://localhost:6379' CELERY_RESULT_BACKEND = 'redis://localhost:6379' CELERY_ACCEPT_CONTENT = ['application/json'] CELERY_TASK_SERIALIZER = 'json' CELERY_RESULT_SERIALIZER = 'json' 
  4. 创建任务:

    在 Django 应用程序中创建一个新的任务。例如,在一个名为 tasks.py 的文件中创建一个简单的任务:

    from celery import shared_task  @shared_task def add(x, y):     return x + y 
  5. 运行 Celery worker:

    在项目根目录下,使用以下命令启动 Celery worker:

    celery -A project worker --loglevel=info 

    这将启动一个 Celery worker,它将开始处理任务队列中的任务。你可以根据需要启动多个 worker 来实现集群。

  6. 调用任务:

    现在你可以从你的应用程序中调用 Celery 任务。例如,在 Django 视图中调用 add 任务:

    from .tasks import add  result = add.delay(4, 4) 

通过以上步骤,你已经成功地在 Linux 上配置了一个 Celery 集群。你可以根据需要调整 worker 的数量、Redis 配置等以满足你的需求。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!