In this section, we learned the following about asynchronous section:
- Asynchronous calls should be used every time a microservice can execute some work out of band. There's no good reason to block a request if what you are doing is not utilized in the response.
- Celery is a nice way to do some background processing.
- Service-to-service communication is not always limited to task queues.
- Sending events around is a good way to prevent services inter-dependencies.
- We can build a full event system around a broker such as Rabbit MQ to make our microservices interact with each other via messages.
- Pika can be used to coordinate all the message passing.