SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
Message Queues

     Kilian


   Today, duh
Motivation



Alternatives



AMQP
What We Need




     Some kind of message queueing / IPC
     Send data from A to B
         send arbitrary messages
         distributed
         Reliable
         Flexible
         Scalable
         Fast
What We Have



     Python Twisted XML-RPC
         arbitrary data: yes
         distributed: yep
         Reliable: implementation
         Flexible: not really ...
         Scalable: well ...
         Fast: oh ...
     Can we have all that, without implementing everything?
far too many IPC standards and implementations out there
not all are distributed
    D-Bus
    MPI
    Signals
some are
    XML-RPC (SOAP, ...)
    ”Sun” RPC
Are any of those reliable?
Reliability




        What goes in comes out.
        It does come out.
        It does come out, even if something goes horribly wrong.
        If something goes horribly wrong, not everything breaks.
AMQP?



    Doesn’t look like it was designed for IPC.
    So what? IPC is just a special case of message passing.
    Does it match our needs?
        arbitrary messages, distributed, flexible, scalable, reliable
        if the implementation is not slower then the current
        XML-RPC, it’s fast enough
    Instead of searching for a IPC standard / implementation that
    fits our needs, search for AMQP implementation that fits our
    needs.
What is AMQP?
Exchanges



      a message is send to a exchange
      every message has a routing key
      the exchange decides, based on the routing key, where to
      enqueue it.
            fine graned configuration, how messages from A reach B
            direct exchange
            fanout
            topic exchange
Exchanges
Fin




      Fin

Más contenido relacionado

Destacado

Best practiclessme2012
Best practiclessme2012Best practiclessme2012
Best practiclessme2012VIRTA s.r.o.
 
Роль стантартов в развитии On line торговли
Роль стантартов в развитии On line торговлиРоль стантартов в развитии On line торговли
Роль стантартов в развитии On line торговлиWikimart
 
Weather and climate miguel angel-martinez
Weather and climate miguel angel-martinezWeather and climate miguel angel-martinez
Weather and climate miguel angel-martinezlola caravaca
 
The light alvaro nohales
The light  alvaro nohalesThe light  alvaro nohales
The light alvaro nohaleslola caravaca
 
Hilton International Training.
Hilton International Training.Hilton International Training.
Hilton International Training.Hilton
 
Timemanagement
TimemanagementTimemanagement
TimemanagementSheila A
 
Thesis i 3.21.11
Thesis i 3.21.11Thesis i 3.21.11
Thesis i 3.21.11alimac326
 
Alien digest vol_1
Alien digest vol_1Alien digest vol_1
Alien digest vol_1gorin2008
 
Especies Invasoras 2016 IES Rambla de Nogalte
Especies Invasoras 2016  IES Rambla de NogalteEspecies Invasoras 2016  IES Rambla de Nogalte
Especies Invasoras 2016 IES Rambla de NogalteTxema Campillo
 
Trabajo science sofia t 6
Trabajo science sofia t 6Trabajo science sofia t 6
Trabajo science sofia t 6lola caravaca
 
BTXA part 4 of 5
BTXA part 4 of 5BTXA part 4 of 5
BTXA part 4 of 5justmargie
 
Living things asensio
Living things asensioLiving things asensio
Living things asensiolola caravaca
 
Gross misconduct
Gross misconductGross misconduct
Gross misconductSheila A
 

Destacado (20)

Facebook Presentatie
Facebook PresentatieFacebook Presentatie
Facebook Presentatie
 
1124473b
1124473b1124473b
1124473b
 
Best practiclessme2012
Best practiclessme2012Best practiclessme2012
Best practiclessme2012
 
Роль стантартов в развитии On line торговли
Роль стантартов в развитии On line торговлиРоль стантартов в развитии On line торговли
Роль стантартов в развитии On line торговли
 
La prehistoria
La prehistoriaLa prehistoria
La prehistoria
 
Weather and climate miguel angel-martinez
Weather and climate miguel angel-martinezWeather and climate miguel angel-martinez
Weather and climate miguel angel-martinez
 
Lasers
LasersLasers
Lasers
 
The light alvaro nohales
The light  alvaro nohalesThe light  alvaro nohales
The light alvaro nohales
 
Facebook Presentatie
Facebook PresentatieFacebook Presentatie
Facebook Presentatie
 
Hilton International Training.
Hilton International Training.Hilton International Training.
Hilton International Training.
 
Timemanagement
TimemanagementTimemanagement
Timemanagement
 
Thesis i 3.21.11
Thesis i 3.21.11Thesis i 3.21.11
Thesis i 3.21.11
 
Alien digest vol_1
Alien digest vol_1Alien digest vol_1
Alien digest vol_1
 
Especies Invasoras 2016 IES Rambla de Nogalte
Especies Invasoras 2016  IES Rambla de NogalteEspecies Invasoras 2016  IES Rambla de Nogalte
Especies Invasoras 2016 IES Rambla de Nogalte
 
L
LL
L
 
Trabajo science sofia t 6
Trabajo science sofia t 6Trabajo science sofia t 6
Trabajo science sofia t 6
 
Pytables
PytablesPytables
Pytables
 
BTXA part 4 of 5
BTXA part 4 of 5BTXA part 4 of 5
BTXA part 4 of 5
 
Living things asensio
Living things asensioLiving things asensio
Living things asensio
 
Gross misconduct
Gross misconductGross misconduct
Gross misconduct
 

Similar a Message Queues

Building a reliable, scalable service with Clojure and Core.async
Building a reliable, scalable service with Clojure and Core.asyncBuilding a reliable, scalable service with Clojure and Core.async
Building a reliable, scalable service with Clojure and Core.asyncKapil Reddy
 
NoSQL afternoon in Japan Kumofs & MessagePack
NoSQL afternoon in Japan Kumofs & MessagePackNoSQL afternoon in Japan Kumofs & MessagePack
NoSQL afternoon in Japan Kumofs & MessagePackSadayuki Furuhashi
 
NoSQL afternoon in Japan kumofs & MessagePack
NoSQL afternoon in Japan kumofs & MessagePackNoSQL afternoon in Japan kumofs & MessagePack
NoSQL afternoon in Japan kumofs & MessagePackSadayuki Furuhashi
 
Messaging with RabbitMQ and AMQP
Messaging with RabbitMQ and AMQPMessaging with RabbitMQ and AMQP
Messaging with RabbitMQ and AMQPEberhard Wolff
 
The Future of Messaging: RabbitMQ and AMQP
The Future of Messaging: RabbitMQ and AMQP The Future of Messaging: RabbitMQ and AMQP
The Future of Messaging: RabbitMQ and AMQP Eberhard Wolff
 
High powered messaging with RabbitMQ
High powered messaging with RabbitMQHigh powered messaging with RabbitMQ
High powered messaging with RabbitMQJames Carr
 
Messaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQMessaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQPOSSCON
 
Architecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard Wolff
Architecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard WolffArchitecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard Wolff
Architecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard WolffJAX London
 
The Message Passing Interface (MPI) in Layman's Terms
The Message Passing Interface (MPI) in Layman's TermsThe Message Passing Interface (MPI) in Layman's Terms
The Message Passing Interface (MPI) in Layman's TermsJeff Squyres
 
RabbitMQ interview Questions and Answers
RabbitMQ interview Questions and AnswersRabbitMQ interview Questions and Answers
RabbitMQ interview Questions and Answersjeetendra mandal
 
Life in a Queue - Using Message Queue with django
Life in a Queue - Using Message Queue with djangoLife in a Queue - Using Message Queue with django
Life in a Queue - Using Message Queue with djangoTareque Hossain
 
Using Apache Camel as AKKA
Using Apache Camel as AKKAUsing Apache Camel as AKKA
Using Apache Camel as AKKAJohan Edstrom
 
Messaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQMessaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQAll Things Open
 
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...Trivadis
 
RestMS Introduction
RestMS IntroductionRestMS Introduction
RestMS Introductionpieterh
 

Similar a Message Queues (20)

Building a reliable, scalable service with Clojure and Core.async
Building a reliable, scalable service with Clojure and Core.asyncBuilding a reliable, scalable service with Clojure and Core.async
Building a reliable, scalable service with Clojure and Core.async
 
NoSQL afternoon in Japan Kumofs & MessagePack
NoSQL afternoon in Japan Kumofs & MessagePackNoSQL afternoon in Japan Kumofs & MessagePack
NoSQL afternoon in Japan Kumofs & MessagePack
 
NoSQL afternoon in Japan kumofs & MessagePack
NoSQL afternoon in Japan kumofs & MessagePackNoSQL afternoon in Japan kumofs & MessagePack
NoSQL afternoon in Japan kumofs & MessagePack
 
Messaging with RabbitMQ and AMQP
Messaging with RabbitMQ and AMQPMessaging with RabbitMQ and AMQP
Messaging with RabbitMQ and AMQP
 
The Future of Messaging: RabbitMQ and AMQP
The Future of Messaging: RabbitMQ and AMQP The Future of Messaging: RabbitMQ and AMQP
The Future of Messaging: RabbitMQ and AMQP
 
High powered messaging with RabbitMQ
High powered messaging with RabbitMQHigh powered messaging with RabbitMQ
High powered messaging with RabbitMQ
 
RabbitMQ
RabbitMQRabbitMQ
RabbitMQ
 
Messaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQMessaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQ
 
Architecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard Wolff
Architecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard WolffArchitecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard Wolff
Architecture | The Future of Messaging: RabbitMQ and AMQP | Eberhard Wolff
 
The Message Passing Interface (MPI) in Layman's Terms
The Message Passing Interface (MPI) in Layman's TermsThe Message Passing Interface (MPI) in Layman's Terms
The Message Passing Interface (MPI) in Layman's Terms
 
Ride The Bus!
Ride The Bus!Ride The Bus!
Ride The Bus!
 
what is soap
what is soapwhat is soap
what is soap
 
RabbitMQ interview Questions and Answers
RabbitMQ interview Questions and AnswersRabbitMQ interview Questions and Answers
RabbitMQ interview Questions and Answers
 
Life in a Queue - Using Message Queue with django
Life in a Queue - Using Message Queue with djangoLife in a Queue - Using Message Queue with django
Life in a Queue - Using Message Queue with django
 
Using Apache Camel as AKKA
Using Apache Camel as AKKAUsing Apache Camel as AKKA
Using Apache Camel as AKKA
 
Message queues
Message queuesMessage queues
Message queues
 
Messaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQMessaging Standards and Systems - AMQP & RabbitMQ
Messaging Standards and Systems - AMQP & RabbitMQ
 
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
Trivadis TechEvent 2016 Apache Kafka - Scalable Massage Processing and more! ...
 
Enterprise messaging
Enterprise messagingEnterprise messaging
Enterprise messaging
 
RestMS Introduction
RestMS IntroductionRestMS Introduction
RestMS Introduction
 

Más de rocketcircus

Más de rocketcircus (7)

Descriptor Protocol
Descriptor ProtocolDescriptor Protocol
Descriptor Protocol
 
Descriptor Protocol
Descriptor ProtocolDescriptor Protocol
Descriptor Protocol
 
Python Academy
Python AcademyPython Academy
Python Academy
 
intro to scikits.learn
intro to scikits.learnintro to scikits.learn
intro to scikits.learn
 
AWS Quick Intro
AWS Quick IntroAWS Quick Intro
AWS Quick Intro
 
PyPy 1.5
PyPy 1.5PyPy 1.5
PyPy 1.5
 
Rocket Circus on Code Review
Rocket Circus on Code ReviewRocket Circus on Code Review
Rocket Circus on Code Review
 

Último

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Último (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Message Queues

  • 1. Message Queues Kilian Today, duh
  • 3. What We Need Some kind of message queueing / IPC Send data from A to B send arbitrary messages distributed Reliable Flexible Scalable Fast
  • 4. What We Have Python Twisted XML-RPC arbitrary data: yes distributed: yep Reliable: implementation Flexible: not really ... Scalable: well ... Fast: oh ... Can we have all that, without implementing everything?
  • 5. far too many IPC standards and implementations out there not all are distributed D-Bus MPI Signals some are XML-RPC (SOAP, ...) ”Sun” RPC Are any of those reliable?
  • 6. Reliability What goes in comes out. It does come out. It does come out, even if something goes horribly wrong. If something goes horribly wrong, not everything breaks.
  • 7. AMQP? Doesn’t look like it was designed for IPC. So what? IPC is just a special case of message passing. Does it match our needs? arbitrary messages, distributed, flexible, scalable, reliable if the implementation is not slower then the current XML-RPC, it’s fast enough Instead of searching for a IPC standard / implementation that fits our needs, search for AMQP implementation that fits our needs.
  • 9. Exchanges a message is send to a exchange every message has a routing key the exchange decides, based on the routing key, where to enqueue it. fine graned configuration, how messages from A reach B direct exchange fanout topic exchange
  • 11. Fin Fin