This document discusses messaging and RabbitMQ. It begins by introducing messaging and explaining why it is becoming more important for applications. It then discusses how RabbitMQ can be used in cloud computing as the "nervous system" of clouds. Several use cases for messaging protocols are presented, including decoupling components, remote procedure calls, pipelining and combining messages with database records, and work distribution through duplication and round-robin delivery to multiple consumers.