NATS is a cloud-native messaging system that offers high performance, simplicity, security, and availability. The introduction of JetStream, a new distributed persistence layer, enables NATS to offer new higher qualities of services and functionalities such as streaming.
- NATS is a complete production problem cloud-native messaging system that is made for developers and operators who want to spend more time doing their job and less time worrying about how to do messaging
- NATS offers over 40 different client libraries in as many languages, request-reply with inbox messaging and queueing, durable subscribers, and streaming functionalities with persistence of the streams
- JetStream replaces STAN as a new streaming functionality of NATS and offers many advantages over STAN
- JetStream is distributed and consistent, implements disaster recovery through mirroring between strips, supports file or memory storage, and offers decoupled flow control between the publishers to stream and the subscribers of that stream
- JetStream has three retention policies available: limits, interests, and working queue, and gives you many options when it comes to replay policies
JetStream provides much better integration with core NATS, allowing for a transition path for existing coordinates application to streaming. This means that developers can easily migrate their existing NATS streaming applications to JetStream and take advantage of its many benefits.