zoukankan      html  css  js  c++  java
  • window下搭建celery+rabbitmq 分布式任务调度

    环境搭建:

    1. 安装celery4.0版本以上

    2.安装erlang的运行环境,因为rabbitmq是基于erlang环境的;    下载链接:http://www.erlang.org/download.html 

    3. 安装rabbitmq ,下载链接:http://www.rabbitmq.com/download.htm

    demo测试:

      创建tasks.py

    from celery import Celery
    
    app = Celery('tasks',backend='',broker='amqp://guest@localhost//')
    
    @app.task
    def add(x, y):
        return x + y

    在项目根目录下面的命令行里运行:celery -A tas worker --loglevel=info启动任务

    然后打开python的命令行模式:

    >>>from tasks  inport add

    >>>add.delay(1,3)

    运行之后就会在cmd的那个窗口里面打印日志的

    如果运行的时候报错ValueError: need more than 0 values to unpack

    则用celery -A tas worker --loglevel=info -P eventlet启动任务,官网说是4以上版本就有这问题,具体可以参考这个https://github.com/celery/celery/issues/4081

     最后添加任务监控:安装Flower

    然后当前项目环境下运行celery flower --broker=amqp://guest:guest@localhost:5672//

     
  • 相关阅读:
    第一章:进销存系统基本功能
    SpringBoot 整合 Docker
    Java的脚本机制、编译器API
    Java 定时任务
    监听文件修改的四种方法
    SpringBoot Actuator — 埋点和监控
    Kafka消息队列
    OpenSSL配置HTTPS
    Java 国际化
    备忘录模式
  • 原文地址:https://www.cnblogs.com/Huangsh2017Come-on/p/9052637.html
Copyright © 2011-2022 走看看