Asynchronous Messaging is a communication pattern in which a sender dispatches a message to an intermediary and continues processing without waiting for the receiver to respond. Messages are buffered in queues or brokers and consumed when downstream services are ready, decoupling producers from consumers in time and load. This pattern improves resilience, scalability and fault tolerance in distributed and event-driven architectures.
Overview
- Asynchronous Messaging is a communication pattern in which a sender dispatches a message to an intermediary and continues processing without waiting for the receiver to respond.
- Messages are buffered in queues or brokers and consumed when downstream services are ready, decoupling producers from consumers in time and load.
- This pattern improves resilience, scalability and fault tolerance in distributed and event-driven architectures.
- It is modelled as a subclass of Message Queue within the infrastructure domain.
Key aspects
- Message Queue is a constituent or mechanism relevant to Asynchronous Messaging.
- Message Broker is a constituent or mechanism relevant to Asynchronous Messaging.
- Rabbitmq is a constituent or mechanism relevant to Asynchronous Messaging.
- Apache Kafka is a constituent or mechanism relevant to Asynchronous Messaging.
Mechanisms
- Asynchronous Messaging enables Scalability.
- Asynchronous Messaging enables Resilience.
- Asynchronous Messaging enables Fault Tolerance.
- Asynchronous Messaging supports Microservices.
- Asynchronous Messaging supports Webhook.
- Asynchronous Messaging is standardised in relation to AMQP.
Applications
- Applied in contexts involving Scalability.
- Applied in contexts involving Resilience.
- Applied in contexts involving Fault Tolerance.
- Applied in contexts involving Microservices.
- Applied in contexts involving Webhook.
- Applied in contexts involving Distributed Systems.