• flower 转自:https://www.jianshu.com/p/4a408657ef76


    flower的启动

    首先flower作为web页面来管理celery后台任务,和任务队列是隔离的,也就是flower的运行与否并不会影响到任务队列的真正执行,但是flower中可以通过API接口来管理celery中的任务执行。

    在django工程目录下面(和manage.py文件在一个层级),具体的执行命令:

    python manage.py celery flower --basic_auth=floweradmin:12345 --port=8083
    

    由于本人在django工程中已经设置了 BROKER_URL 所以在上述的flower启动命令中就没有再次指定队列url。

    flower界面介绍

    本片文章着重进行flower界面的介绍,主要是因为没有一个完整的文档来进行介绍,所以下面是详细介绍flower界面中各个页面展示的内容,并且各个字段的含义。

     
    flower界面

    Dashboard

    Dashboard 页面是展示异步任务队列的主要情况,该页面包括如下几种状态的任务:

    • Active: 表示worker从队列中获取到任务,且正在执行的任务数
    • Processed: 表示worker从队列中获取到任务的总数据量
    • Failed: 表示worker从队列中获取到任务,且执行失败了的(异常退出)
    • Successed: 表示worker从队列中获取到任务,且执行成功了的
    • Retried: 表示worker从队列中获取到任务,因为一些其他原因重新执行的数量

    所以,上述这些数量的关系如下:
    Processed = Active + Received + Failed + Successed + Retried
    其中 Received 表示该任务分配到了worker中,但是还没有被处理的任务数量

     
    Dashboard页面

    Worker Name 表示的是执行celery任务的worker名称;
    Status 表示的是该worker的状态,包括 Online (在线) 、 Offline(离线),重启flower进程,即可将Offline状态的worker剔除掉;
    Active / Processed / Failed / Successed / Retried 分别表示该worker正在执行的任务数、该worker处理的总任务数、处理失败的任务数、处理成功的任务数、重试的任务数;
    Load Average 表示系统在 1min / 5min / 15min 内的CPU平均负载(百分比)

    Tasks

    Tasks 页面是展示所有worker接收到的任务的处理情况。下面对该表格中的做一些介绍

     
    Tasks页面
    • Name: 表示该任务的名称,默认规则为该函数的路径规则,例如 {模块名}.{文件名}.{函数名}
    • UUID: 表示一个唯一字符串ID用于表示该任务
    • State: 表示该任务的状态,包括: SUCCESS / FAILURE / STARTED / RECEIVED
      • SUCCESS 表示该任务执行完毕且成功
      • FAILURE 表示该任务执行失败
      • STARTED 表示该任务正在执行
      • RECEIVED 表示该任务在worker中,只是被接收而已
    • args: 表示该任务的列表参数
    • kwargs: 表示该任务的字典参数
    • Result: 表示该任务函数的返回结果
    • Received: 表示该任务在worker接收到的时间
    • Started: 表示该任务在worker开始执行的时间
    • Runtime: 表示该任务在worker真正执行的耗时(单位:秒)
    • Worker: 表示该任务所在的worker名称

    Broker

    Broker 页面展示的是celery连接消息队列的信息,包括消息队列的访问URL,下面的截图展示的是链接的RabbitMQ,当然也可以链接Redis等。

     
    Broker页面
    • Name: 表示队列的名称
    • Messages: 表示该队列的消息数量
    • Unacked: 表示该队列中还没收到ack确认的消息数量(该消息可能处于 RECEIVED 或是 STARTED
    • Ready: 表示该队列中还未分配到worker的消息数量
    • Consumers: 表示消费者数量(即worker数量)
    • Idle since: 表示该队列空闲的最初时间,否则为 N/A

    Monitor

    Monitor 页面展示的是celery后台任务的曲线展示状况。

     
    Monitor页面

     



    作者:jshan
    链接:https://www.jianshu.com/p/4a408657ef76
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    The parent project must have a packaging type of POM
    oracle中PLSQL存储过程中如何使用逗号分隔的集合(逗号分隔字符串转换为一个集合)
    此实现不是 Windows 平台 FIPS 验证的加密算法的一部分的解决办法方案
    @Modules( ... ) 多个包路径问题
    phpstorm常用操作---1、phpstorm安装插件
    phpstorm中如何配置phpunit(单元测试)
    前端性能优化---3、静态资源使用cdn加速
    前端性能优化---2、图片响应式加载
    前端性能优化---1、懒加载和复杂资源点击时再请求
    Javascript进阶课程---1、使用工厂模式创建对象
  • 原文地址:https://www.cnblogs.com/testzcy/p/13245748.html
Copyright © 2020-2023  润新知