TOML
Message Queue Systems - TOML
Message queue systems are middleware that enable asynchronous communication between distributed systems. Various systems exist with different characteristics such as high-throughput streaming processing, low-latency messaging, and cloud-native managed services. This list introduces major message queue systems including RabbitMQ, Apache Kafka, Amazon SQS, Redis, ActiveMQ, NATS, and Apache Pulsar.
message queue
distributed systems
asynchronous communication
middleware
event streaming
microservices
[[items]]
code = "01"
slug = "rabbitmq"
name = "RabbitMQ"
description = "An open-source message broker with flexible routing capabilities."
cloudNative = false
deployment = "[\"self-hosted\",\"cloud-managed\"]"
latency = "1-20ms"
messageReplay = false
persistence = true
protocols = "[\"AMQP\",\"MQTT\",\"STOMP\"]"
throughput = "~1M messages/sec"
type = "message-broker"
[[items]]
code = "02"
slug = "apache-kafka"
name = "Apache Kafka"
description = "A high-throughput distributed event streaming platform."
cloudNative = false
deployment = "[\"self-hosted\",\"managed\"]"
latency = "2-10ms"
messageReplay = true
persistence = true
protocols = "[\"Kafka Protocol\"]"
throughput = "10M+ messages/sec"
type = "event-streaming"
[[items]]
code = "03"
slug = "amazon-sqs"
name = "Amazon SQS"
description = "A fully managed serverless message queue service provided by AWS."
cloudNative = true
deployment = "[\"managed\"]"
latency = "10-100ms"
messageReplay = false
persistence = true
protocols = "[\"AWS API\"]"
throughput = "~300K messages/sec"
type = "managed-queue"
[[items]]
code = "04"
slug = "redis-streams"
name = "Redis Streams"
description = "Streaming capabilities provided by Redis, an in-memory data store."
cloudNative = false
deployment = "[\"self-hosted\",\"managed\"]"
latency = "Ultra Low"
messageReplay = true
persistence = "optional"
protocols = "[\"Redis Protocol\"]"
throughput = "Very High"
type = "in-memory-stream"
[[items]]
code = "05"
slug = "apache-activemq"
name = "Apache ActiveMQ"
description = "A traditional JMS-based enterprise message broker."
cloudNative = false
deployment = "[\"self-hosted\"]"
latency = "Medium"
messageReplay = false
persistence = true
protocols = "[\"JMS\",\"AMQP\",\"MQTT\",\"STOMP\",\"OpenWire\"]"
throughput = "Medium"
type = "message-broker"
[[items]]
code = "06"
slug = "nats"
name = "NATS"
description = "A cloud-native lightweight messaging system."
cloudNative = true
deployment = "[\"self-hosted\",\"managed\"]"
latency = "Ultra Low"
messageReplay = true
persistence = "optional"
protocols = "[\"NATS Protocol\"]"
throughput = "Very High"
type = "cloud-native-messaging"
[[items]]
code = "07"
slug = "apache-pulsar"
name = "Apache Pulsar"
description = "A distributed messaging system with multi-tenancy and tiered storage."
cloudNative = true
deployment = "[\"self-hosted\",\"managed\"]"
latency = "Low"
messageReplay = true
persistence = true
protocols = "[\"Pulsar Protocol\"]"
throughput = "Very High"
type = "event-streaming"
[[items]]
code = "08"
slug = "google-pubsub"
name = "Google Cloud Pub/Sub"
description = "A fully managed messaging service provided by Google Cloud."
cloudNative = true
deployment = "[\"managed\"]"
latency = "Low"
messageReplay = true
persistence = true
protocols = "[\"Google Cloud API\"]"
throughput = "Very High"
type = "managed-queue"
[[items]]
code = "09"
slug = "azure-service-bus"
name = "Azure Service Bus"
description = "An enterprise integration messaging service provided by Microsoft Azure."
cloudNative = true
deployment = "[\"managed\"]"
latency = "Low-Medium"
messageReplay = false
persistence = true
protocols = "[\"AMQP\",\"HTTP/REST\",\"SBMP\"]"
throughput = "High"
type = "managed-queue"
[[items]]
code = "10"
slug = "rocketmq"
name = "Apache RocketMQ"
description = "A highly available distributed messaging platform developed by Alibaba."
cloudNative = true
deployment = "[\"self-hosted\",\"managed\"]"
latency = "Low"
messageReplay = true
persistence = true
protocols = "[\"RocketMQ Protocol\"]"
throughput = "Very High"
type = "message-broker"