DiscoverNATS.fmEP03S3: NATS 2.11 Release
EP03S3: NATS 2.11 Release

EP03S3: NATS 2.11 Release

Update: 2025-04-08
Share

Description

1. Distributed Message TracingGain full visibility into message paths across complex NATS topologies — including clusters, gateways, leaf nodes, account boundaries, and subject mappings.- Activated via a NATS-Trace header and supported directly in the CLI (nats trace [subject]).- Supports dry runs: trace a message’s route without delivering it, ideal for debugging or verification.- Useful for both operators and developers to understand and verify message flow behavior.2. Per-Message TTL (Time-To-Live)Set expiration per message with the NATS-TTL header — allowing messages to age out individually, regardless of stream-level retention settings.- TTLs are optional and per-message: not all messages need one, and TTL values can differ.- Backed by an efficient timed hash wheel structure to minimize memory use.- Major benefits for KV buckets — TTL-based deletion markers reduce storage and avoid manual compaction.3. Consumer Priority GroupsA new mechanism for pull-based load balancing and resilience:- Introduces overflow rules: clients can take over message delivery if primary clients are overwhelmed, using thresholds for pending messages or ACKs.- Pinning: designate a single client to receive all messages until it fails, enabling failover patterns.- One priority group per consumer in this release, designed to expand in the future.- Enables simpler, cost-effective cross-region and zone-aware delivery strategies.4. Multi-Message Get (Batch Get)Efficient, stateless retrieval of multiple messages from a stream — without creating consumers.- Supports multiple subject filters, time/sequence bounds, and returns data in sequence order.- Ideal for querying the latest messages, previewing stream data, or powering internal state lookups.- Foundational for upcoming KV/Object Store improvements and future batch operations.5. Consumer PauseTemporarily halt message delivery without tearing down the consumer or triggering client-side errors.- Works with both push and pull consumers.- Specify a pause_until deadline in the config — message flow resumes automatically afterward.- Heartbeats continue, so clients stay connected and unaware of the pause.- Valuable for maintenance, orchestration, or preventing unwanted consumption during deployments.

Comments 
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

EP03S3: NATS 2.11 Release

EP03S3: NATS 2.11 Release

NATS.fm