For workloads that aren't as important durability wise, has anyone considered nats? https://nats.io/
Yes. Queuing semantics are usually about ordered delivery, acknowledgements, consumer groups, retries, priorities, etc. RabbitMQ does that, NATS only has queue groups at most.
Imagine how you would build a persistent logging app on top of NATS, and that's what NATS Streaming is.
- kafka for firehose data
- nats for realtime, routed data