Messaging Queues are widely use in asynchronous systems. Message processing in an asynchronous fashion allows the client to relieve itself from waiting for a task to complete and, hence, can do other jobs during that time. It also allows a server to process it’s jobs in the order it wants to.
Messaging Queues provide useful features such as persistence, routing and task management. We will be discussing the benefits of a message queue in future videos.
A system having a message queue can move to higher level requirements while abstracting implementation details of message delivery and event handling to the messaging queue.
The ’queue’ is just a name for this data structure. In practice, it could be storing messages using any policy. Some examples of message queues are Kafka and RabbitMQ. They are widely used for various purposes such as command query request segregation (CQRS) and event sourcing.
Code:
Looking to ace your next interview? Try this System Design video course! 🔥
?source_id=messagequeue
With video lectures, architecture diagrams, capacity planning, API contracts and evaluation tests. It’s a complete package.
Use the coupon code ’earlybird’ for a 20% discount!
Asynchronous Request-Response:
Message Queue:
Load Balancing:
You can find me here:
#message-queue #system-design #scalability #server