Your SlideShare is downloading. ×
XMPP & AMQP
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

XMPP & AMQP

6,037

Published on

Published in: Technology
0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,037
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
11
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. XMPP and AMQP
  • 2. • Python or Erlang • Network Server Developer ... ? • Accense Technology, Inc. • Google API Expert (Google App Engine) • twitter/wassr id:voluntas
  • 3. • XMPP AMQP • • BPStudy • • AWS
  • 4. Polling sucks! @ http://d.hatena.ne.jp/tasukuchan/20090509/notify_events_to_many_clients
  • 5. XMPP eXtensible Messaging and Presence Protocol http://xmpp.org/ AMQP Advanced Message Queuing Protocol http://www.amqp.org/
  • 6. ejabberd the Erlang Jabber/XMPP daemon http://www.ejabberd.im/ Rabbit MQ Open Source Enterprise Messaging http://www.rabbitmq.com/
  • 7. Erlang
  • 8. Erlang ? • • • 1987 • • • Open Telecom Platform (OTP)
  • 9. ... • Facebook Online Chat • AWS SimpleDB • Apache CouchDB • DB Kai / scalaris • id:higepon http://d.hatena.ne.jp/higepon/ 20090509/1241863278
  • 10. ... / Erlang http://teahut.sakura.ne.jp/b/2009-04-04-1.html (2009 3 ) Erlang
  • 11. XMPP • XML • RFC • Jabber -> XMPP • Google Talk • Mail • TCP
  • 12. XML • http://www.ietf.org/rfc/rfc3920.txt • • XML <stream> <message> <body/> </message> </stream>
  • 13. XMPP Server • • • Message Client Client
  • 14. XMPP Server XMPP Server XMPP Server • • • Message Client Client
  • 15. • XMPP Server • XMPP Server ID IP • XML • XMPP • DNS
  • 16. • SSL/TLS • DNS • SASL
  • 17. SASL? • RFC 2222 • • ... ? • orz
  • 18. XMPP • Google • • • • OpenFire
  • 19. ejabberd • Erlang XMPP • • Google Talk Group Chat • Erlang
  • 20. Ejabberd “cloud Edtion alpha” http://www.planeterlang.org/en/planet/article/ejabberd_cloud_edition_alpha/
  • 21. Cloud Edition? • • • AWS SDB S3 • SQS ...
  • 22. AWS •Elastic Load Balancing • Auto Scaling • Amazon CloudWatch
  • 23. AWS Import/Export • HDD Amazon • Amazon HDD S3 • S3 HDD
  • 24. • http://www.slideshare.net/maraby/xmpp- amqp-in-ruby • http://xmpp.org/ • http://dev.ariel-networks.com/modules/ xfsection/article.php?articleid=17 • http://oreilly.com/catalog/9780596521264/
  • 25. AMQP • Advanced Message Queue Protocol • MQ • • • • 1.0 ...
  • 26. AMQP? • • PubSub (Publish-Subscribe) • • TCP • •
  • 27. Direct Routing Key AQMP Server Subscriber Exchange Queue Publisher Spam Queue Subscriber Spam Exchange Publisher Queue Subscriber Spam
  • 28. Direct Exchange Type • • •
  • 29. funout AQMP Server Subscriber Exchange Queue Publisher Subscriber Queue Queue Subscriber
  • 30. Fanout Exchange Type • •
  • 31. Topic Routing Key AQMP Server Subscriber a.b.c.d Exchange Queue spam.egg Publisher spam.# Queue Subscriber ham.egg Exchange Publisher *.egg Queue Subscriber
  • 32. Topic Exchange Type • • a.b.c.d •# * • *.b.c.# a.b.c.d a.d.c.b
  • 33. RabbitMQ • Erlang AMQP • 130 • 3 • AMQP 0.8 • XMPP gateway STOMP gateway
  • 34. • http://journal.mycom.co.jp/news/ 2006/06/21/343.html • http://jira.amqp.org/confluence/display/ AMQP/Advanced+Message+Queuing +Protocol • http://www.infoq.com/jp/news/2008/08/ amqp-progress
  • 35. Kay • Google App Engine / Python • http://bitbucket.org/tmatsuo/kay/ • GAE Expert & Apps Guru tmatsuo •

×