Django command to launch celery worker, beat, flower
Project description
Django command to run celery (worker, beat, flower)
with automatically reboot server after changing files
Benefits of using this cli
- The ability to run up to three servers (worker, beat, flower) simultaneously in one terminal, instead of running by default in three different terminals.
- Automatic reboot of these servers when your codebase changes
Install
-
Install package
pip install celery-starter
-
Add app name to
INSTALLED_APPS
INSTALLED_APPS = [ 'celery_starter', ]
Command to run the program:
python manage.py runcelery
Arguments can be passed in any order, it doesn't matter.
Optional Arguments:
-h
or --help
Show help message.
-w <cmd>
or --worker <cmd>
Full command line to run worker or options that extend the default command line.
-b <cmd>
or --beat <cmd>
Full command line to run beat or options that extend the default command line.
-f <cmd>
or --flower <cmd>
Full command line to run flower or options that extend the default command line.
-eb
or --exclude_beat
Excludes the beat server at startup.
-ef
or --exclude_flower
Excludes the flower server at startup.
-d
or --debug
Displays information about successful/unsuccessful completion of processes.
To stopped program pressing the keyboard shortcut CTRL+C
Examples of Commands
default commands:
# worker cmd
# (WARNING) Note that the default pool is solo, because of this, all tasks will be performed sequentially, to get parallelism, install one of the libraries [gevent | eventlet] and redefine the default pool in cmd.
celery -A <CELERY_APP> worker -E -l INFO -P solo
# beat cmd
celery -A <CELERY_APP> beat --pidfile=celerybeat.pid -l INFO
# flower cmd
celery --broker=redis://localhost:6379// flower -A <CELERY_APP> --url_prefix=flower
valid commands:
# redefining the -A and -P parameter and adding a new --broker parameter to the default worker command
python manage.py runcelery -w "-A <CELERY_APP> -P gevent --broker=redis://localhost:6379//"
# complete replacement of the default worker command with the passed command
python manage.py runcelery -w "celery -A <CELERY_APP> worker"
Working with beat and flower commands works in a similar way.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for celery_starter-1.0.8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3cad6ec234daa3f3536a36c4e20cb523b01366d36983515f2f73c167126427fb |
|
MD5 | b3ecb19e8abe4b68713111763371faaa |
|
BLAKE2b-256 | 78f7a833f42c2df44d484edbfd7d4f9669fcb5a2e5d03d10ef83605c3e266d95 |