Eventing Data with RabbitMQ and Riak
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Eventing Data with RabbitMQ and Riak

on

  • 2,303 views

The slides from my presentation at Erlang Factory 2011.

The slides from my presentation at Erlang Factory 2011.

Statistics

Views

Total Views
2,303
Views on SlideShare
2,297
Embed Views
6

Actions

Likes
0
Downloads
33
Comments
0

3 Embeds 6

https://twitter.com 4
http://www.linkedin.com 1
https://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NoDerivs LicenseCC Attribution-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Eventing Data with RabbitMQ and Riak Presentation Transcript

  • 1. Eventing Data with RabbitMQ and Riak
    • Jon Brisbin
    • [email_address] - @j_brisbin
  • 2.  
  • 3. Evented Data is a reflection of different aspects of a single application.
  • 4. What is Data, then?
  • 5. Data cono flno flda8 1 3877 20110609 1 468 20110822
  • 6.  
  • 7. Data [{ “ company_number”: 1, “ flight_number”: 3877, “ flight_date”: 20110609 }, { “ company_number”: 1, “ flight_number”: 468, “ flight_date”: 20110822 }]
  • 8.  
  • 9. Data PUT /services/flightinfo Content-Type: text/plain 1,3877,20110609 1,468,20110822
  • 10. Data Exchange: flight Routing-Key: info X-Meta-Company: 1 Content-Type: application/json [ [3877,20110609], [468,20110822] ]
  • 11. The only important pieces of data are... [ [3877,20110609], [468,20110822] ]
  • 12.  
  • 13. Where the data is stored doesn’t really matter...
  • 14. ...nor does the language used to extract it...
  • 15. ...nor does the language of the server in which it is stored.
  • 16. The only thing that matters is THE DATA.
  • 17. It is the Alpha and the Omega of the project.
  • 18.  
  • 19.  
  • 20. The RabbitMQ Side Custom exchange type “x-riak”
  • 21. The RabbitMQ Side Custom exchange type “x-riak”
    • Arguments:
    • host = “localhost”
    • port = 8087
    • type-module = “..._topic”
    • maxclients = 5
  • 22. The RabbitMQ Side Custom exchange type “x-riak”
    • Possible type-modules:
    • rabbit_exchange_type_topic
    • rabbit_exchange_type_direct
    • rabbit_exchange_type_fanout
    • rabbit_exchange_type_headers
    • mymodule_custom_type_foo
  • 23. presentation.startDemo();
  • 24. The Riak Side
  • 25. The Riak Side PUT /riak/bucket Content-Type: application/json { props: { postcommit: [ { mod: “riak_rabbitmq”, fun: “postcommit_send_amqp” } ] } }
  • 26. The Riak Side
    • Metadata:
    • X-Riak-Meta-Amqp-Exchange
    • X-Riak-Meta-Amqp-Routing-Key
    • X-Riak-Meta-Amqp-Host
    • X-Riak-Meta-Amqp-Port
    • X-Riak-Meta-Amqp-Vhost
    • X-Riak-Meta-Amqp-User
    • X-Riak-Meta-Amqp-Password
    • X-Riak-Meta-Amqp-Ignore
  • 27. Store metadata on a special entry named “AMQP-Meta” in that bucket
  • 28. presentation.startDemo();
  • 29. http://github.com/jbrisbin @j_brisbin [email_address]