In this chapter, we will cover the following topics:
- Need for asynchronous
- Asynchronous patterns
- Working with Celery
- Understanding asyncio
- Entering channels
In simpler times, a web application used to be a large monolithic Django process that can handle a request and block until the response is generated.
In today's microservices world, applications are made up of a complex and often-interlocking chain of processes providing specialized services. Django is possibly one of the links in an application flow. As Eliyahu Goldratt would say, "the chain is only as strong as its weakest link". In other words, the synchronous nature of Django can potentially make it a performance bottleneck.
Hence, there are various asynchronous solutions built around Django that can help you retain the fast response times as well as satisfy the asynchronous...