Documentation
Interface reference and per-backend configuration for mqutils v2
The reference is generated from the Go doc comments, so it matches this documentation build. Guides live alongside it in the sidebar.
v2 note. Import paths carry a
/v2suffix on every module, and handlers now return anerror: nil acknowledges, an error rejects. See Upgrading from v1.
- Core types defines
Consumer,Producer,Publisher,Message, the handler function types andHealthChecker. Every backend implements these. - Main package holds
NewConsumer,NewProducer, the typed builders, and handler registration. - Runner is the shared consumer loop that backends build on: settlement, retry budgets, batching, reconnect, graceful shutdown.
- Each backend page lists that module’s configuration keys with defaults, and anything specific to the broker.
Kafka security and transactions and RabbitMQ Streams cover backend capability APIs. The optional Redis deduplication adapter implements the Stream claim-store contract without adding Redis to the core Stream module.
Backends
AMQP / RabbitMQamqp://Channel pooling, publisher confirms, blocked-connection queueing. at-least-once; dead-letter exchange; native delayed retry on rabbitmq ≥ 4.3.
Apache Kafkakafka://TLS/SASL, consumer groups, atomic producer transactions. at-least-once; retry topic → dead-letter topic.
NATS JetStreamjetstream://Streams, durable consumers, explicit acks. at-least-once; dropped after the budget.
AWS SQSsqs://Standard and FIFO, visibility timeout, long polling. at-least-once; dead-letter queue via redrivepolicy.
GCP Pub/Subpubsub://Ordering keys, publish batching. at-least-once; deadletterpolicy (needs an iam grant).
Redis Streamsredisstream://Consumer groups, XAutoClaim recovery (Redis ≥ 6.2), trimming. at-least-once; dropped after the budget.
RabbitMQ Streamsrabbitmq-stream://Super streams, exact filtering, durable offsets, outbox/inbox deduplication. at-least-once; confirmed dead-letter stream, explicit discard, or stop without advancing.
All reference pages
Core typesConsumer, Producer, Message, Handler and health-check interfaces shared by every backend
Main packageFactory functions, typed builders and handler registration
RunnerThe shared consumer loop: settlement, retry budgets, batching, reconnect and graceful shutdown
AMQP / RabbitMQAMQP 0-9-1 consumer and producer with exchanges, routing keys, dead-letter exchanges, retry queues and channel pooling
Apache KafkaConsumer groups, TLS and SASL authentication, atomic producer transactions, and read-committed consumption
NATSNATS Core (at-most-once pub/sub with queue groups) and JetStream (streams, durable consumers, acks)
AWS SQSStandard and FIFO queues, dead-letter queues via RedrivePolicy, visibility timeout and long polling
GCP Pub/SubTopics and subscriptions with DeadLetterPolicy, publish batching and ordering keys
RedisRedis Pub/Sub channels (at-most-once) and Redis Streams consumer groups with XAutoClaim recovery
RabbitMQ StreamsConfirmed publishing, durable offsets, super streams, filtering, and durable message deduplication
Redis deduplication adapterOptional durable Redis claim store for RabbitMQ Stream consumer deduplication
mqutils