This document compares and contrasts XMPP and AMQP for asynchronous, event-driven messaging. It provides overviews of each protocol, examples of their usage including relevant Ruby libraries, and proposes ways they could be combined to power event-driven architectures involving message queuing, delivery, and processing across distributed systems. The key is to use whichever solution best meets you