Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Messaging
WHO AM I?
• Luis Majano - Computer Engineer
• Born in El Salvador ------------------>
• Architecture + Software Design
• CEO of Ortus Solutions
• Manager of the IECFUG
(www.iecfug.com)
• Adobe Community Professional
• Creator of all things Box:
ColdBox, ContentBox,WireBox....
AGENDA
• RPC Calls
• What is Messaging
• Implementations
• AMQP Protocol
• RabbitMQ
• Nice Demo
RPC STYLE CALLS
CFC CFC
CFC
PROBLEMS WITH RPC
Messaging Bus
Can be
any system or
language
Publish/Subscribe Topics/Routing
Protocols
Message
(Body+Routing Key)
• Direct
• Routing key = queue name
• No mapping or extra fluff just a passthrough
• Similar to JMS
• Topic
• Binding pattern (routing key) is match against the queue name
• Not full regex
• Ex: log.*,log#
• Not like JMS Topics, forget JMS, this is not JMS
• Fanout + More
LOAD BALANCING + ACK
Messages are
Consumer round-robin
to each
consumer
Worker
Queue Consumer
Consumer
need to ack
Consumer
PUB-SUB EXAMPLE
• Java Producer
• Java Consumer
• CFML Consumer
• NodeJS Consumer
• JavaScript Consumer DEMOTIME
• CFML Producer
Q &A
• RabbitMQ In Action Book
• http://www.rabbitmq.com
• http://tryrabbitmq.com/
• https://github.com/RabbitMQSimulator/RabbitMQSimulator
• http://koo.fi/blog/2013/02/18/web-messaging-with-rabbitmq-web-stomp-and-
sockjs/
• https://github.com/robharrop/presentations.git