Taming the rabbit

Alvaro Videla
Alvaro VidelaSoftware Developer at Pivotal
Taming The Rabbit
                            Writing RabbitMQ Plugins



                            Alvaro Videla - VMware




Wednesday, October 24, 12
About Me
                    •       Developer Advocate for Cloud Foundry

                    •       Blog: http://videlalvaro.github.com/

                    •       Twitter: @old_sound




Wednesday, October 24, 12
About Me
                    •       Developer Advocate for Cloud Foundry

                    •       Blog: http://videlalvaro.github.com/

                    •       Twitter: @old_sound

                    •       I created gifsockets™




Wednesday, October 24, 12
About Me
                            Co-authored

               RabbitMQ in Action
              http://bit.ly/rabbitmq




Wednesday, October 24, 12
RabbitMQ

Wednesday, October 24, 12
RabbitMQ

                    • Enterprise Messaging System
                    • Open Source MPL
                    • Written in Erlang/OTP
                    • Messaging via AMQP
                    • Acquired by Spring Source (VMware)

Wednesday, October 24, 12
Features

                    • Reliable and High Scalable
                    • Easy To install
                    • Easy To Cluster
                    • Runs on: Windows, Solaris, Linux, OSX
                    • AMQP 0.8 - 0.9.1

Wednesday, October 24, 12
Wednesday, October 24, 12
Extensible
                    • Plugin System
                    • Official Plugins
                    • Community Plugins



Wednesday, October 24, 12
Extensible
                    • Plugin System
                    • Official Plugins
                    • Community Plugins
                    • Plugins must be written in Erlang


Wednesday, October 24, 12
Wednesday, October 24, 12
What can you do with
                          plugins?


Wednesday, October 24, 12
Add new
                            Protocols
Wednesday, October 24, 12
STOMP
Wednesday, October 24, 12
STOMP

                            COMMAND
                            header1:value1
                            header2:value2

                            Body^@



Wednesday, October 24, 12
STOMP

                            CONNECT
                            accept-version:1.1
                            host:stomp.github.org

                            ^@



Wednesday, October 24, 12
STOMP

                            CONNECTED
                            version:1.1

                            ^@




Wednesday, October 24, 12
Websockets
                                +
                             STOMP
                                =
                            WebSTOMP
Wednesday, October 24, 12
Add Authentication
                               Mechanisms


Wednesday, October 24, 12
LDAP
Wednesday, October 24, 12
SSL
Wednesday, October 24, 12
Add your own Message
                         Store


Wednesday, October 24, 12
Must Read
         http://www.rabbitmq.com/blog/2011/01/20/rabbitmq-
                  backing-stores-databases-and-disks/




Wednesday, October 24, 12
Wrap Erlang apps
                             together with
                               RabbitMQ


Wednesday, October 24, 12
cowboy-wrapper



Wednesday, October 24, 12
ldap-wrapper



Wednesday, October 24, 12
webmachine-wrapper



Wednesday, October 24, 12
Add extra functionality
                      to the broker


Wednesday, October 24, 12
RabbitMQ
                     Management Plugin


Wednesday, October 24, 12
http://www.rabbitmq.com/img/management/overview.png
Wednesday, October 24, 12
RabbitMQ
                            Shovel Plugin


Wednesday, October 24, 12
Create your Own
                               Exchanges


Wednesday, October 24, 12
Why?

Wednesday, October 24, 12
Exchanges

Wednesday, October 24, 12
Message Flow




                  http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_Tutorial/chap-Messaging_Tutorial-Initial_Concepts.html



Wednesday, October 24, 12
AMQP Model

                    • Exchanges
                    • Message Queues
                    • Bindings
                    • Rules for binding them

Wednesday, October 24, 12
Exchange Types

                    • Fanout
                    • Direct
                    • Topic


Wednesday, October 24, 12
http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_Tutorial/sect-Messaging_Tutorial-Initial_Concepts-
                                                                      Fanout_Exchange.html




Wednesday, October 24, 12
http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_Tutorial/sect-Messaging_Tutorial-Initial_Concepts-
                                                                       Direct_Exchange.html




Wednesday, October 24, 12
http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_Tutorial/sect-Messaging_Tutorial-Initial_Concepts-
                                                                       Topic_Exchange.html




Wednesday, October 24, 12
random-exchange



Wednesday, October 24, 12
consistent-hash-exchange




Wednesday, October 24, 12
riak-exchange




Wednesday, October 24, 12
rabbitmq-global-fanout-exchange




Wednesday, October 24, 12
recent-history-exchange




Wednesday, October 24, 12
recent-history-exchange
                                                                 user_x


                            Using the recent history exchange      New
                                                                   Msg
                            Last N messages


                                  Msg
                                                    New         Chat Room
                                                    Msg         Exchange
                                 Cache




                                Cached              New            New       New
                                 Msgs               Msg            Msg       Msg




                                                  user_a         user_b     user_c



                              new_user
                                                                http://manning.com/videla/
Wednesday, October 24, 12
Exchange Behaviours




Wednesday, October 24, 12
recent-history-exchange

                                             Caches up to
                                             20 messages
                            Recent History
                              Exchange
                                route/2
                                                Delivers
                             add_binding/3   cached msgs
                                             to new client
                               delete/3


                                                Drops
                                               cached
                                              messages


           http://manning.com/videla/
Wednesday, October 24, 12
Env Setup

      hg clone http://hg.rabbitmq.com/rabbitmq-public-umbrella
      cd rabbitmq-public-umbrella
      make co




Wednesday, October 24, 12
File Structure

                        |--   rabbitmq-public-umbrella
                        |     |-- myplugin-folder
                        |     |   | -- package.mk
                        |     |   | -- Makefile




Wednesday, October 24, 12
RabbitMQ Boot Steps

                https://github.com/videlalvaro/rabbit-internals/blob/master/rabbit_boot_process.md




Wednesday, October 24, 12
RabbitMQ Boot Steps




Wednesday, October 24, 12
RabbitMQ Boot Steps

           -rabbit_boot_step({recovery,
                              [{description,
                                        "exchange, queue and binding
                               recovery"},
                               {mfa,         {rabbit, recover, []}},
                               {requires,    empty_db_check},
                               {enables,     routing_ready}]}).




Wednesday, October 24, 12
RabbitMQ Boot Steps

               -rabbit_boot_step({msg_store_bitcask_index,
                      [{description,
                           "Bitcask Index for rabbit_msg_store"},
                       {mfa, {application, set_env,
                           [rabbit, msg_store_index_module, ?MODULE]}},
                       {enables, recovery}]}).




                            Modify Configuration at Startup


Wednesday, October 24, 12
Demo Code



Wednesday, October 24, 12
Managing Plugins



Wednesday, October 24, 12
rabbitmq-plugins

              $ rabbitmq-plugins list
              $ rabbitmq-plugins enable plugin_name
              $ rabbitmq-plugins disable plugin_name




           http://www.rabbitmq.com/man/rabbitmq-plugins.1.man.html

Wednesday, October 24, 12
ACHTUNG!
                    • Plugins Run in the same Erlang process




Wednesday, October 24, 12
ACHTUNG!
                    • Plugins Run in the same Erlang process
                    • They may crash your broker




Wednesday, October 24, 12
Have Fun
                                and
                            Experiment!

Wednesday, October 24, 12
Questions?



Wednesday, October 24, 12
Thanks!
                                     Álvaro Videla
                               http://twitter.com/old_sound
                               http://github.com/videlalvaro
                            http://www.slideshare.net/old_sound




Wednesday, October 24, 12
1 of 62

Recommended

Rabbitmq Boot System by
Rabbitmq Boot SystemRabbitmq Boot System
Rabbitmq Boot SystemAlvaro Videla
3.4K views21 slides
Fight with Metaspace OOM by
Fight with Metaspace OOMFight with Metaspace OOM
Fight with Metaspace OOMLeon Chen
1.3K views96 slides
Hazelcast by
HazelcastHazelcast
Hazelcastoztalip
11K views40 slides
Toward 10,000 Containers on OpenStack by
Toward 10,000 Containers on OpenStackToward 10,000 Containers on OpenStack
Toward 10,000 Containers on OpenStackTon Ngo
321 views33 slides
淺談 Java GC 原理、調教和 新發展 by
淺談 Java GC 原理、調教和新發展淺談 Java GC 原理、調教和新發展
淺談 Java GC 原理、調教和 新發展Leon Chen
12.2K views80 slides
Distributed Lock Manager by
Distributed Lock ManagerDistributed Lock Manager
Distributed Lock ManagerHao Chen
1.7K views20 slides

More Related Content

What's hot

Hazelcast by
HazelcastHazelcast
HazelcastBruno Lellis
856 views18 slides
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebula by
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebulaD’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebulaOpenNebula Project
1.4K views14 slides
Practicing Continuous Deployment by
Practicing Continuous DeploymentPracticing Continuous Deployment
Practicing Continuous Deploymentzeeg
2.8K views38 slides
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo... by
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...NETWAYS
1.2K views58 slides
Go Programming Patterns by
Go Programming PatternsGo Programming Patterns
Go Programming PatternsHao Chen
3.2K views77 slides
Connect2016 AD1387 Integrate with XPages and Java by
Connect2016 AD1387 Integrate with XPages and JavaConnect2016 AD1387 Integrate with XPages and Java
Connect2016 AD1387 Integrate with XPages and JavaJulian Robichaux
613 views105 slides

What's hot(20)

D’une infrastructure de virtualisation scripté à un cloud privé OpenNebula by OpenNebula Project
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebulaD’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
D’une infrastructure de virtualisation scripté à un cloud privé OpenNebula
OpenNebula Project1.4K views
Practicing Continuous Deployment by zeeg
Practicing Continuous DeploymentPracticing Continuous Deployment
Practicing Continuous Deployment
zeeg2.8K views
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo... by NETWAYS
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
OpenNebula Conf 2014 | OpenNebula and MooseFS for disaster recovery: real clo...
NETWAYS1.2K views
Go Programming Patterns by Hao Chen
Go Programming PatternsGo Programming Patterns
Go Programming Patterns
Hao Chen3.2K views
Connect2016 AD1387 Integrate with XPages and Java by Julian Robichaux
Connect2016 AD1387 Integrate with XPages and JavaConnect2016 AD1387 Integrate with XPages and Java
Connect2016 AD1387 Integrate with XPages and Java
Julian Robichaux613 views
Puppet Camp Dublin - 06/2012 by Roland Tritsch
Puppet Camp Dublin - 06/2012Puppet Camp Dublin - 06/2012
Puppet Camp Dublin - 06/2012
Roland Tritsch419 views
Cassandra Day NY 2014: Getting Started with the DataStax C# Driver by DataStax Academy
Cassandra Day NY 2014: Getting Started with the DataStax C# DriverCassandra Day NY 2014: Getting Started with the DataStax C# Driver
Cassandra Day NY 2014: Getting Started with the DataStax C# Driver
DataStax Academy7.2K views
OpenNebula - OpenNebula and tips for CentOS 7 by OpenNebula Project
OpenNebula - OpenNebula and tips for CentOS 7OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula - OpenNebula and tips for CentOS 7
OpenNebula Project13.8K views
The OSSCube MySQL High Availability Tutorial by OSSCube
The OSSCube MySQL High Availability TutorialThe OSSCube MySQL High Availability Tutorial
The OSSCube MySQL High Availability Tutorial
OSSCube2.9K views
Cassandra Summit 2015: Real World DTCS For Operators by Jeff Jirsa
Cassandra Summit 2015: Real World DTCS For OperatorsCassandra Summit 2015: Real World DTCS For Operators
Cassandra Summit 2015: Real World DTCS For Operators
Jeff Jirsa5.6K views
OpenNebulaConf 2013 - Hands-on Tutorial: 1. Introduction and Architecture by OpenNebula Project
OpenNebulaConf 2013 - Hands-on Tutorial: 1. Introduction and ArchitectureOpenNebulaConf 2013 - Hands-on Tutorial: 1. Introduction and Architecture
OpenNebulaConf 2013 - Hands-on Tutorial: 1. Introduction and Architecture
Understanding DSE Search by Matt Stump by DataStax
Understanding DSE Search by Matt StumpUnderstanding DSE Search by Matt Stump
Understanding DSE Search by Matt Stump
DataStax4.1K views
High Throughput Analytics with Cassandra & Azure by DataStax Academy
High Throughput Analytics with Cassandra & AzureHigh Throughput Analytics with Cassandra & Azure
High Throughput Analytics with Cassandra & Azure
DataStax Academy4.4K views
Non-blocking synchronization — what is it and why we (don't?) need it by Alexey Fyodorov
Non-blocking synchronization — what is it and why we (don't?) need itNon-blocking synchronization — what is it and why we (don't?) need it
Non-blocking synchronization — what is it and why we (don't?) need it
Alexey Fyodorov2K views
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity by OpenNebula Project
TechDay - Cambridge 2016 - OpenNebula at Harvard UniverityTechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
TechDay - Cambridge 2016 - OpenNebula at Harvard Univerity
OpenNebula Project12.2K views
Distributed system coordination by zookeeper and introduction to kazoo python... by Jimmy Lai
Distributed system coordination by zookeeper and introduction to kazoo python...Distributed system coordination by zookeeper and introduction to kazoo python...
Distributed system coordination by zookeeper and introduction to kazoo python...
Jimmy Lai6.2K views

Viewers also liked

Integrating PostgreSql with RabbitMQ by
Integrating PostgreSql with RabbitMQIntegrating PostgreSql with RabbitMQ
Integrating PostgreSql with RabbitMQGavin Roy
15.8K views33 slides
BayLISA meetup: 8/16/12 by
BayLISA meetup: 8/16/12BayLISA meetup: 8/16/12
BayLISA meetup: 8/16/12bcantrill
4.9K views8 slides
Chef on SmartOS by
Chef on SmartOSChef on SmartOS
Chef on SmartOSEric Saxby
2K views48 slides
Fi fo euc 2014 by
Fi fo euc 2014Fi fo euc 2014
Fi fo euc 2014Licenser
1.3K views30 slides
The Kitchen Cloud How To: Automating Joyent SmartMachines with Chef by
The Kitchen Cloud How To: Automating Joyent SmartMachines with ChefThe Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
The Kitchen Cloud How To: Automating Joyent SmartMachines with ChefChef Software, Inc.
4.7K views36 slides
SmartOS ZFS Architecture by
SmartOS ZFS ArchitectureSmartOS ZFS Architecture
SmartOS ZFS ArchitectureBill Pijewski
4.5K views12 slides

Viewers also liked(14)

Integrating PostgreSql with RabbitMQ by Gavin Roy
Integrating PostgreSql with RabbitMQIntegrating PostgreSql with RabbitMQ
Integrating PostgreSql with RabbitMQ
Gavin Roy15.8K views
BayLISA meetup: 8/16/12 by bcantrill
BayLISA meetup: 8/16/12BayLISA meetup: 8/16/12
BayLISA meetup: 8/16/12
bcantrill4.9K views
Chef on SmartOS by Eric Saxby
Chef on SmartOSChef on SmartOS
Chef on SmartOS
Eric Saxby2K views
Fi fo euc 2014 by Licenser
Fi fo euc 2014Fi fo euc 2014
Fi fo euc 2014
Licenser1.3K views
The Kitchen Cloud How To: Automating Joyent SmartMachines with Chef by Chef Software, Inc.
The Kitchen Cloud How To: Automating Joyent SmartMachines with ChefThe Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
The Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
Chef Software, Inc.4.7K views
SmartOS ZFS Architecture by Bill Pijewski
SmartOS ZFS ArchitectureSmartOS ZFS Architecture
SmartOS ZFS Architecture
Bill Pijewski4.5K views
Experiences porting KVM to SmartOS by bcantrill
Experiences porting KVM to SmartOSExperiences porting KVM to SmartOS
Experiences porting KVM to SmartOS
bcantrill9.4K views
CBSE XII Database Concepts And MySQL Presentation by Guru Ji
CBSE XII Database Concepts And MySQL PresentationCBSE XII Database Concepts And MySQL Presentation
CBSE XII Database Concepts And MySQL Presentation
Guru Ji94.6K views
Steve Jobs Inspirational Quotes by InsideView
Steve Jobs Inspirational QuotesSteve Jobs Inspirational Quotes
Steve Jobs Inspirational Quotes
InsideView204K views
Dissecting the rabbit: RabbitMQ Internal Architecture by Alvaro Videla
Dissecting the rabbit: RabbitMQ Internal ArchitectureDissecting the rabbit: RabbitMQ Internal Architecture
Dissecting the rabbit: RabbitMQ Internal Architecture
Alvaro Videla28.5K views

Similar to Taming the rabbit

RealTime Web with PocketIO by
RealTime Web with PocketIORealTime Web with PocketIO
RealTime Web with PocketIOYnon Perek
1.8K views36 slides
MongoDB Use Cases and Roadmap by
MongoDB Use Cases and RoadmapMongoDB Use Cases and Roadmap
MongoDB Use Cases and RoadmapMongoDB
1.2K views23 slides
Intro to NoSQL and MongoDB by
 Intro to NoSQL and MongoDB Intro to NoSQL and MongoDB
Intro to NoSQL and MongoDBMongoDB
983 views21 slides
OCaml Labs introduction at OCaml Consortium 2012 by
OCaml Labs introduction at OCaml Consortium 2012OCaml Labs introduction at OCaml Consortium 2012
OCaml Labs introduction at OCaml Consortium 2012Anil Madhavapeddy
1.7K views22 slides
Apple Bonjour: Let's Talk! by
Apple Bonjour: Let's Talk!Apple Bonjour: Let's Talk!
Apple Bonjour: Let's Talk!Nicholas Valbusa
1.5K views186 slides
Container Camp London (2016-09-09) by
Container Camp London (2016-09-09)Container Camp London (2016-09-09)
Container Camp London (2016-09-09)craigbox
308 views75 slides

Similar to Taming the rabbit(20)

RealTime Web with PocketIO by Ynon Perek
RealTime Web with PocketIORealTime Web with PocketIO
RealTime Web with PocketIO
Ynon Perek1.8K views
MongoDB Use Cases and Roadmap by MongoDB
MongoDB Use Cases and RoadmapMongoDB Use Cases and Roadmap
MongoDB Use Cases and Roadmap
MongoDB1.2K views
Intro to NoSQL and MongoDB by MongoDB
 Intro to NoSQL and MongoDB Intro to NoSQL and MongoDB
Intro to NoSQL and MongoDB
MongoDB983 views
OCaml Labs introduction at OCaml Consortium 2012 by Anil Madhavapeddy
OCaml Labs introduction at OCaml Consortium 2012OCaml Labs introduction at OCaml Consortium 2012
OCaml Labs introduction at OCaml Consortium 2012
Anil Madhavapeddy1.7K views
Container Camp London (2016-09-09) by craigbox
Container Camp London (2016-09-09)Container Camp London (2016-09-09)
Container Camp London (2016-09-09)
craigbox308 views
OpenStack in Action 4! Serge Frezefond - Database Clusters as a Service in O... by eNovance
OpenStack in  Action 4! Serge Frezefond - Database Clusters as a Service in O...OpenStack in  Action 4! Serge Frezefond - Database Clusters as a Service in O...
OpenStack in Action 4! Serge Frezefond - Database Clusters as a Service in O...
eNovance2.4K views
Cloud Foundry OpenTour Kiev Keynote by Patrick Chanezon
Cloud Foundry OpenTour Kiev KeynoteCloud Foundry OpenTour Kiev Keynote
Cloud Foundry OpenTour Kiev Keynote
Patrick Chanezon5.5K views
Dcamp ldn presentation by a_c_m
Dcamp ldn presentationDcamp ldn presentation
Dcamp ldn presentation
a_c_m2.1K views
PuppetCamp SEA @ Blk 71 - Puppet: The Year That Was by Walter Heck
PuppetCamp SEA @ Blk 71 - Puppet: The Year That WasPuppetCamp SEA @ Blk 71 - Puppet: The Year That Was
PuppetCamp SEA @ Blk 71 - Puppet: The Year That Was
Walter Heck634 views
PuppetCamp SEA @ Blk 71 - Puppet: The Year That Was by OlinData
PuppetCamp SEA @ Blk 71 - Puppet: The Year That WasPuppetCamp SEA @ Blk 71 - Puppet: The Year That Was
PuppetCamp SEA @ Blk 71 - Puppet: The Year That Was
OlinData374 views
HTML5 exam : checking answers by yomotsu
HTML5 exam : checking answersHTML5 exam : checking answers
HTML5 exam : checking answers
yomotsu987 views
The Wonderful World of Symfony Components by Ryan Weaver
The Wonderful World of Symfony ComponentsThe Wonderful World of Symfony Components
The Wonderful World of Symfony Components
Ryan Weaver47.4K views
Cloud Foundry Bootcamp by Alvaro Videla
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry Bootcamp
Alvaro Videla2.5K views
It's in the cloud by kenperkins
It's in the cloudIt's in the cloud
It's in the cloud
kenperkins745 views

More from Alvaro Videla

Improvements in RabbitMQ by
Improvements in RabbitMQImprovements in RabbitMQ
Improvements in RabbitMQAlvaro Videla
3.6K views58 slides
Data Migration at Scale with RabbitMQ and Spring Integration by
Data Migration at Scale with RabbitMQ and Spring IntegrationData Migration at Scale with RabbitMQ and Spring Integration
Data Migration at Scale with RabbitMQ and Spring IntegrationAlvaro Videla
2.4K views53 slides
RabbitMQ Data Ingestion at Craft Conf by
RabbitMQ Data Ingestion at Craft ConfRabbitMQ Data Ingestion at Craft Conf
RabbitMQ Data Ingestion at Craft ConfAlvaro Videla
3.6K views117 slides
Scaling applications with RabbitMQ at SunshinePHP by
Scaling applications with RabbitMQ   at SunshinePHPScaling applications with RabbitMQ   at SunshinePHP
Scaling applications with RabbitMQ at SunshinePHPAlvaro Videla
5.5K views149 slides
Unit Test + Functional Programming = Love by
Unit Test + Functional Programming = LoveUnit Test + Functional Programming = Love
Unit Test + Functional Programming = LoveAlvaro Videla
16.9K views68 slides
Introduction to RabbitMQ | Meetup at Pivotal Labs by
Introduction to RabbitMQ | Meetup at Pivotal LabsIntroduction to RabbitMQ | Meetup at Pivotal Labs
Introduction to RabbitMQ | Meetup at Pivotal LabsAlvaro Videla
5.3K views76 slides

More from Alvaro Videla(20)

Improvements in RabbitMQ by Alvaro Videla
Improvements in RabbitMQImprovements in RabbitMQ
Improvements in RabbitMQ
Alvaro Videla3.6K views
Data Migration at Scale with RabbitMQ and Spring Integration by Alvaro Videla
Data Migration at Scale with RabbitMQ and Spring IntegrationData Migration at Scale with RabbitMQ and Spring Integration
Data Migration at Scale with RabbitMQ and Spring Integration
Alvaro Videla2.4K views
RabbitMQ Data Ingestion at Craft Conf by Alvaro Videla
RabbitMQ Data Ingestion at Craft ConfRabbitMQ Data Ingestion at Craft Conf
RabbitMQ Data Ingestion at Craft Conf
Alvaro Videla3.6K views
Scaling applications with RabbitMQ at SunshinePHP by Alvaro Videla
Scaling applications with RabbitMQ   at SunshinePHPScaling applications with RabbitMQ   at SunshinePHP
Scaling applications with RabbitMQ at SunshinePHP
Alvaro Videla5.5K views
Unit Test + Functional Programming = Love by Alvaro Videla
Unit Test + Functional Programming = LoveUnit Test + Functional Programming = Love
Unit Test + Functional Programming = Love
Alvaro Videla16.9K views
Introduction to RabbitMQ | Meetup at Pivotal Labs by Alvaro Videla
Introduction to RabbitMQ | Meetup at Pivotal LabsIntroduction to RabbitMQ | Meetup at Pivotal Labs
Introduction to RabbitMQ | Meetup at Pivotal Labs
Alvaro Videla5.3K views
Writing testable code by Alvaro Videla
Writing testable codeWriting testable code
Writing testable code
Alvaro Videla8.4K views
Cloud Messaging With Cloud Foundry by Alvaro Videla
Cloud Messaging With Cloud FoundryCloud Messaging With Cloud Foundry
Cloud Messaging With Cloud Foundry
Alvaro Videla2.1K views
Código Fácil De Testear by Alvaro Videla
Código Fácil De TestearCódigo Fácil De Testear
Código Fácil De Testear
Alvaro Videla2.4K views
Desacoplando aplicaciones by Alvaro Videla
Desacoplando aplicacionesDesacoplando aplicaciones
Desacoplando aplicaciones
Alvaro Videla1.4K views
Theres a rabbit on my symfony by Alvaro Videla
Theres a rabbit on my symfonyTheres a rabbit on my symfony
Theres a rabbit on my symfony
Alvaro Videla83.5K views
Scaling Web Apps With RabbitMQ - Erlang Factory Lite by Alvaro Videla
Scaling Web Apps With RabbitMQ - Erlang Factory LiteScaling Web Apps With RabbitMQ - Erlang Factory Lite
Scaling Web Apps With RabbitMQ - Erlang Factory Lite
Alvaro Videla4K views
Integrating php withrabbitmq_zendcon by Alvaro Videla
Integrating php withrabbitmq_zendconIntegrating php withrabbitmq_zendcon
Integrating php withrabbitmq_zendcon
Alvaro Videla16.5K views
Scaling webappswithrabbitmq by Alvaro Videla
Scaling webappswithrabbitmqScaling webappswithrabbitmq
Scaling webappswithrabbitmq
Alvaro Videla1.4K views
Integrating RabbitMQ with PHP by Alvaro Videla
Integrating RabbitMQ with PHPIntegrating RabbitMQ with PHP
Integrating RabbitMQ with PHP
Alvaro Videla24K views
Integrating Erlang with PHP by Alvaro Videla
Integrating Erlang with PHPIntegrating Erlang with PHP
Integrating Erlang with PHP
Alvaro Videla6.7K views
Interoperability With RabbitMq by Alvaro Videla
Interoperability With RabbitMqInteroperability With RabbitMq
Interoperability With RabbitMq
Alvaro Videla6K views

Recently uploaded

2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe by
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
2024: A Travel Odyssey The Role of Generative AI in the Tourism UniverseSimone Puorto
12 views61 slides
virtual reality.pptx by
virtual reality.pptxvirtual reality.pptx
virtual reality.pptxG036GaikwadSnehal
14 views15 slides
The Forbidden VPN Secrets.pdf by
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdfMariam Shaba
20 views72 slides
Microsoft Power Platform.pptx by
Microsoft Power Platform.pptxMicrosoft Power Platform.pptx
Microsoft Power Platform.pptxUni Systems S.M.S.A.
53 views38 slides
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...James Anderson
92 views32 slides
Future of AR - Facebook Presentation by
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentationssuserb54b561
15 views27 slides

Recently uploaded(20)

2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe by Simone Puorto
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
Simone Puorto12 views
The Forbidden VPN Secrets.pdf by Mariam Shaba
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdf
Mariam Shaba20 views
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson92 views
Future of AR - Facebook Presentation by ssuserb54b561
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
ssuserb54b56115 views
Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10300 views
"Surviving highload with Node.js", Andrii Shumada by Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays22 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Unit 1_Lecture 2_Physical Design of IoT.pdf by StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec12 views
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana16 views
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc11 views
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... by Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker40 views

Taming the rabbit