Home

mQ

Mq, or a message queue, is a communication method in which producers send messages to a queue managed by a messaging system, and consumers retrieve messages from the queue. This asynchronous pattern decouples components, enabling more resilient, scalable, and fault-tolerant architectures in distributed software.

Core concepts include messages, producers, and consumers; a broker or broker-like component that stores and routes

Architectures vary: broker-based systems host queues on a central broker, while brokerless designs route messages directly

Protocols and standards often associated with mq include AMQP, MQTT, and STOMP, with JMS serving as a

Common implementations span IBM MQ, RabbitMQ, Apache ActiveMQ, and Apache Kafka, with cloud offerings like Amazon

Use cases encompass decoupling microservices, asynchronous task processing, event-driven architectures, IoT telemetry, and batch job orchestration.

messages;
queues
(point-to-point)
or
topics
(publish-subscribe);
and
delivery
guarantees
such
as
persistence,
acknowledgements,
and
ordering.
Messages
can
be
durable
or
transient,
and
systems
provide
different
delivery
semantics—at-most-once,
at-least-once,
or
exactly-once—depending
on
configuration
and
guarantees.
between
endpoints.
Queues
support
decoupling
and
load
leveling,
and
topics
enable
fan-out
to
multiple
subscribers.
Messaging
patterns
include
point-to-point
(one
consumer
per
message)
and
publish-subscribe
(multiple
consumers
for
the
same
message).
Java
API
for
messaging.
Some
systems
also
use
proprietary
protocols.
Many
modern
solutions
support
durable
storage,
replay,
and
security
features
such
as
encryption
and
authentication.
SQS.
While
traditional
MQ
focuses
on
reliable,
asynchronous
queues,
Kafka
is
often
described
as
a
distributed
streaming
platform
with
similar
messaging
use
cases.
Trade-offs
to
consider
include
throughput,
latency,
delivery
guarantees,
ordering,
and
operational
complexity.