amqp.org/about/what “The capable, commoditized, multi-vendor communications ecosystem which AMQP enables “The capable, commoditized, multi-vendor communications ecosystem which AMQP enables creates opportunities for commerce and innovation “The capable, commoditized, multi-vendor communications ecosystem which AMQP enables creates opportunities for commerce and innovation which can transform the way business is done “The capable, commoditized, multi-vendor communications ecosystem which AMQP enables creates opportunities for commerce and innovation which can transform the way business is done on the Internet “The capable, commoditized, multi-vendor communications ecosystem which AMQP enables creates opportunities for commerce and innovation which can transform the way business is done on the Internet, and in the Cloud.”
“open standard application layer protocol for message-oriented middleware” https://en.wikipedia.org/wiki/ Advanced_Message_Queuing_Protocol “open standard application layer protocol for message-oriented middleware”
No guaranteed order – aim for commutativity Order of messages not guarantueed Commutativity Complement with synchronous API (e.g. REST) • most recent data • leading system • message consumers follow up with REST if necessary Small payload • easier on the broker 24
No exactly-once delivery – aim for idem-potent messages Duplicated messages • possible e.g. if producer re-sends message after connection failure • use idem-potent message handling 25
In a nutshell • Interoperability • Improve response times • Avoid downtimes • Scale on the fly • Reduce complexity • Simplify code • Easy to get started 37
Who am I Contact • http://www.kpuschke.eu • twitter: @titanoboa42 • https://www.xing.com/profile/ Kerstin_Puschke Senior Software Engineer at XING Hamburg • xing.com social network for business professionals • debian, perl, javascript, ruby on rails, mysql, redis, riak, . . . We’re hiring in Hamburg, Barcelona,… http://corporate.xing.com/ english/company/careers- at-xing/ The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
Flexible Routing via different Exchange Types Direct Exchange • routes to all queues whose binding_key equals routing_key Fanout Exchange • broadcasts to every queue it has a binding for • ignores routing key and queue name Topic Exchange • dot-separated words as routing keys, plus wildcards • routing on multiple attributes Header Exchange • based on headers, not routing keys • routing on multiple attributes 41