Company
Date Published
Author
Anthony Accomazzo
Word count
1556
Language
English
Hacker News points
None

Summary

NATS is an open-source messaging system that Sequin recently adopted for streaming third-party API data. It primarily uses a publish-subscribe mechanism, offering a simple and predictable protocol that allows for asynchronous and ephemeral communication without the need for addresses. NATS also features a request/reply mechanism for synchronous communication, and its JetStream system adds persistence with configurable message storage, offering features akin to Kafka's consumer groups but without partitioning. NATS' subject-based routing on read provides expressive subscription capabilities, reducing irrelevant message processing. While lacking Kafka's partitioning paradigm, NATS allows for deterministic subject token partitioning to ensure message ordering, though it requires more coordination compared to Kafka's auto-balanced partitions. The NATS CLI is highlighted for its ease of use in setting up and testing functionality, and Sequin appreciates the system's flexibility and ergonomics compared to AWS services they previously relied on.