Disclaimer: I work on NATS and am employed by Synadia, maintainer of NATS.
NATS is much more lightweight than the alternatives, and has a much simpler operation story and can run on low resource hardware very easily.
Kafka fits a very specific use case, and NATS tries to solve a much larger set of distributed computing use cases, including micro-services, distributed KV, streaming, pub/sub, object store and more.
It’s a very different philosophy, but can be very powerful when it’s deployed as a utility inside an organization.
We’ve seen so many success stories, especially companies moving to the edge, we continue to see NATS used as a common transport for all kinds of use cases in finance, IoT, edge, Industry 4.0, and Retail
how robust is nats persistence layer ? strenght of kafka relies on its proven ability to maintain a high load while making sure you won't loose the events you're streaming.
Disclaimer: I'm a NATS maintainer working in Synadia (the company behind NATS)
It is robust and performant, with subject-based querying, HA, scalability, streams, key-value store, mirrors and at-least-once and exactly-once semantics.
Used in production on a large scale by companies across many industries.