All Projects → mher → Flower

mher / Flower

Licence: other
Real-time monitor and web admin for Celery distributed task queue

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to Flower

celery-connectors
Want to handle 100,000 messages in 90 seconds? Celery and Kombu are that awesome - Multiple publisher-subscriber demos for processing json or pickled messages from Redis, RabbitMQ or AWS SQS. Includes Kombu message processors using native Producer and Consumer classes as well as ConsumerProducerMixin workers for relay publish-hook or caching
Stars: ✭ 37 (-99.27%)
Mutual labels:  rabbitmq, workers, celery
Fastapi Celery
Minimal example utilizing fastapi and celery with RabbitMQ for task queue, Redis for celery backend and flower for monitoring the celery tasks.
Stars: ✭ 154 (-96.94%)
Mutual labels:  redis, rabbitmq, celery
Node Celery
Celery client for Node.js
Stars: ✭ 648 (-87.13%)
Mutual labels:  redis, rabbitmq, celery
Rq
Simple job queues for Python
Stars: ✭ 8,065 (+60.15%)
Mutual labels:  workers, redis, task-queue
Hippo
💨A well crafted go packages that help you build robust, reliable, maintainable microservices.
Stars: ✭ 134 (-97.34%)
Mutual labels:  asynchronous, redis, rabbitmq
Dtcqueuebundle
Symfony2/3/4/5 Queue Bundle (for background jobs) supporting Mongo (Doctrine ODM), Mysql (and any Doctrine ORM), RabbitMQ, Beanstalkd, Redis, and ... {write your own}
Stars: ✭ 115 (-97.72%)
Mutual labels:  workers, redis, rabbitmq
Rusty Celery
🦀 Rust implementation of Celery for producing and consuming background tasks
Stars: ✭ 243 (-95.17%)
Mutual labels:  redis, rabbitmq, celery
python-asynchronous-tasks
😎Asynchronous tasks in Python with Celery + RabbitMQ + Redis
Stars: ✭ 37 (-99.27%)
Mutual labels:  rabbitmq, asynchronous, celery
celery.node
Celery task queue client/worker for nodejs
Stars: ✭ 164 (-96.74%)
Mutual labels:  workers, celery, task-queue
Rabbitmq Management
RabbitMQ Management UI and HTTP API
Stars: ✭ 356 (-92.93%)
Mutual labels:  rabbitmq, monitoring
His
HIS英文全称 hospital information system(医院信息系统http://59.110.234.89:9999/swagger-ui.html ),医疗信息就诊系统,系统主要功能按照数据流量、流向及处理过程分为临床诊疗、药品管理、财务管理、患者管理。诊疗活动由各工作站配合完成,并将临床信息进行整理、处理、汇总、统计、分析等。本系统包括以下工作站:门诊医生工作站、药房医生工作站、医技医生工作站、收费员工作站、对帐员工作站、管理员工作站。需求为东软提供的云医院。
Stars: ✭ 359 (-92.87%)
Mutual labels:  redis, rabbitmq
Lmstfy
Implements task queue in Golang which based on Redis storage
Stars: ✭ 373 (-92.59%)
Mutual labels:  redis, task-queue
Predis Async
Asynchronous PHP client library for Redis built on top of ReactPHP
Stars: ✭ 354 (-92.97%)
Mutual labels:  asynchronous, redis
Huey
a little task queue for python
Stars: ✭ 3,761 (-25.32%)
Mutual labels:  redis, task-queue
Full Stack Notes
全栈工程师手册
Stars: ✭ 366 (-92.73%)
Mutual labels:  redis, rabbitmq
Springboot Learning
基于Gradle构建,使用SpringBoot在各个场景的应用,包括集成消息中间件、前后端分离、数据库、缓存、分布式锁、分布式事务等
Stars: ✭ 340 (-93.25%)
Mutual labels:  redis, rabbitmq
Enferno
A Python framework based on Flask microframework, with batteries included, and best practices in mind.
Stars: ✭ 385 (-92.36%)
Mutual labels:  redis, celery
Lettuce Core
Advanced Java Redis client for thread-safe sync, async, and reactive usage. Supports Cluster, Sentinel, Pipelining, and codecs.
Stars: ✭ 4,319 (-14.24%)
Mutual labels:  asynchronous, redis
Meiam.system
.NET 5 / .NET Core 3.1 WebAPI + Vue 2.0 + RBAC 企业级前后端分离权限框架
Stars: ✭ 340 (-93.25%)
Mutual labels:  redis, rabbitmq
Docker Django
A complete docker package for deploying django which is easy to understand and deploy anywhere.
Stars: ✭ 378 (-92.49%)
Mutual labels:  redis, celery

Flower

https://travis-ci.org/mher/flower.svg?branch=master

Flower is a web based tool for monitoring and administrating Celery clusters.

Features

  • Real-time monitoring using Celery Events

    • Task progress and history
    • Ability to show task details (arguments, start time, runtime, and more)
    • Graphs and statistics
  • Remote Control

    • View worker status and statistics
    • Shutdown and restart worker instances
    • Control worker pool size and autoscale settings
    • View and modify the queues a worker instance consumes from
    • View currently running tasks
    • View scheduled tasks (ETA/countdown)
    • View reserved and revoked tasks
    • Apply time and rate limits
    • Configuration viewer
    • Revoke or terminate tasks
  • Broker monitoring

    • View statistics for all Celery queues
    • Queue length graphs
  • HTTP API

  • Basic Auth, Google, Github, Gitlab and Okta OAuth

  • Prometheus integration

Installation

Installing flower with pip is simple

$ pip install flower

Development version can be installed with

$ pip install https://github.com/mher/flower/zipball/master#egg=flower

Usage

Important Please note that from version 1.0.1 Flower uses Celery 5 and has to be invoked in the same style as celery commands do.

The key takeaway here is that the Celery app's arguments have to be specified after the celery command and Flower's arguments have to be specified after the flower sub-command.

This is the template to follow:

celery [celery args] flower [flower args]

Core Celery args that you may want to set:

-A, --app
-b, --broker
--result-backend

More info on available Celery command args.

For Flower command args see here.

Usage Examples

Launch the Flower server at specified port other than default 5555 (open the UI at http://localhost:5566):

$ celery flower --port=5566

Specify Celery application path with address and port for Flower:

$ celery -A proj flower --address=127.0.0.6 --port=5566

Launch using docker:

$ docker run -p 5555:5555 mher/flower

Launch with unix socket file:

$ celery flower --unix-socket=/tmp/flower.sock

Broker URL and other configuration options can be passed through the standard Celery options (notice that they are after Celery command and before Flower sub-command):

$ celery -A proj --broker=amqp://guest:guest@localhost:5672// flower

API

Flower API enables to manage the cluster via REST API, call tasks and receive task events in real-time via WebSockets.

For example you can restart worker's pool by:

$ curl -X POST http://localhost:5555/api/worker/pool/restart/myworker

Or call a task by:

$ curl -X POST -d '{"args":[1,2]}' http://localhost:5555/api/task/async-apply/tasks.add

Or terminate executing task by:

$ curl -X POST -d 'terminate=True' http://localhost:5555/api/task/revoke/8a4da87b-e12b-4547-b89a-e92e4d1f8efd

Or receive task completion events in real-time:

var ws = new WebSocket("ws://localhost:5555/api/task/events/task-succeeded/");
ws.onmessage = function (event) {
    console.log(event.data);
}

For more info checkout API Reference and examples.

Documentation

Documentation is available at Read the Docs and IPython Notebook Viewer

License

Flower is licensed under BSD 3-Clause License. See the LICENSE file in the top distribution directory for the full license text.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].