Intro
Django native component
Exploring Django’s native components for microservices web applications
Django is a versatile web development tool and has these native components for developing microservices already on board:
- Django Rest Framework (DRF): A framework for building RESTful APIs as general microservices.
- Django Cache Framework: A framework for optimizing the performance of a microservices application.
Extenernal Django component
Traversing the external components for Django microservices web applications
The main components of a microservices architecture:
- Producer
- Task queue
- Worker
Task and message queue brokers
For task and message queueing, Django collaborates with the following external components:
Component | Purpose | Type |
---|---|---|
Celery |
Task queue broker | Python package |
RabbitMQ |
Message queue broker | Stand-alone software |
Redis |
Message queue broker and caching system | Stand-alone software |
Table 2.1 – Task and message queue brokers for Django
There are other task and message queueing brokers, such as Dramatiq. But Celery, RabbitMQ, and Redis are the most common in the Django community; therefore, we will focus on Celery, RabbitMQ and Redis.