Task management with Redis and Celery
Celery, an asynchronous task queue project available at http://www.celeryproject.org, is based on distributed message passing and allows execution of individual tasks. With Celery, you can specify different message broker backends, with Redis being one of the supported message brokers. In a basic use case for Celery, a Celery application or instance is created for handling such operations as creating tasks and managing workers that respond to those tasks.
To show how Celery can be used in a simple application, we'll implement an application based on the following scenario: a small school district with a single high school wants a class room reservation system for after-school activities. While there are many approaches you could take to create a simple room reservation system, we'll go ahead and build a Python-based system that uses Celery and Redis to manage the room reservations in this high school. Each room that is available for reservation will switch...