I have a simple question regarding NATS. We are at the phase where we want to use a message queue system for the communication of some different modules we have (in Go and Python) in our company. We are considering NATS, NSQ and RabbitMQ. I have preference for NATS as I really like the speed and some really nice features of the GO client library. However I read this:
http://www.quora.com/Why-does-CloudFoundry-use-NATS-a-specially-written-messaging-system-whereas-OpenStack-uses-AMQP. Can someone explain me what we mean by "durability, transactions, and formal queues" and why NATS is not good for an enterprise system.