Your SlideShare is downloading. ×
  • Like
Работаем с RabbitMQ в Python используя kombu + gevent. (Rinat khabibiev)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Работаем с RabbitMQ в Python используя kombu + gevent. (Rinat khabibiev)

  • 276 views
Published

Хабибиев Ринат - Senior Python Developer / Россия, Москва …

Хабибиев Ринат - Senior Python Developer / Россия, Москва

Тема доклада - показать как легко и просто начать использовать очереди сообщений в Python в асинхронных воркерах, использующих gevent.

http://www.it-sobytie.ru/events/2040

Published in Education , Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
276
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
3
Comments
0
Likes
0

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. Async AMQP kombu + gevent https://github.com/renskiy/async_amqp
  • 2. Table of contents • requirements • AMQP • gevent + kombu • solution • useful links and questions
  • 3. Queues are useful for • process synchronization • deferred computations • slow I/O
  • 4. Somewhere in the code
  • 5. Requirements • Python 2.x (2.5 or higher) • gevent • kombu
  • 6. Advanced Message Queuing Protocol • Broker • Message • All messages are published into Exchange • Client consumes messages from Queue • Messages from Exchange are routed to Queue based on condition specified by Binding
  • 7. Exchange types • direct - exact match of message’s Routing Key and binding’s one • topic - basic routing based on wildcard matching of Routing Key treated as zero or more words separated by «.» («*» - single word, «#» - zero or more words) • fanout - simple broadcast • headers - more complicated routing based on custom headers matching
  • 8. gevent + kombu
  • 9. Publisher
  • 10. Sync Consumer
  • 11. Async Consumer
  • 12. Semaphore Consumer
  • 13. Useful links • https://github.com/renskiy/async_amqp • http://mutlix.blogspot.ru/2007/09/amqp-in-10- mins-part0.html • http://sdiehl.github.io/gevent-tutorial/