I've heard a lot about talking about MessageQueue, and I've never used it in practice. But before that, I would like to know what is the need and purpose of using an MQ. Thinking about scalability and performance.
Sometimes I get confused with caching, just like memcached and redis, where I can use Pub / SUb.