Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Брокер очередей

Брокер очередей

Слайды обзорного ликбеза для коллег о протоколе AMQP и реализующем его брокере очередей RabbitMQ

58e952ea302f1fa452f69c9d8204a8bc?s=128

Vladimir Plizga

October 21, 2019
Tweet

Transcript

  1. БРОКЕР ОЧЕРЕДЕЙ и вот это всё

  2. ВВЕДЕНИЕ В ТЕМУ 1 2

  3. КОМПОНЕНТЫ СИСТЕМЫ СВЯЗАНЫ СИНХРОННО И АСИНХРОННО 3

  4. ОЧЕРЕДЬ 4

  5. ОСОБЕННОСТИ АСИНХРОННОГО ВЗАИМОДЕЙСТВИЯ НА ОЧЕРЕДЯХ 5

  6. AMQP 2 6

  7. ADVANCED MESSAGE QUEUING PROTOCOL 7

  8. ОЧЕРЕДИ 8

  9. ОСНОВНЫЕ ХАРАКТЕРИСТИКИ ОЧЕРЕДИ В AMQP 9

  10. СООБЩЕНИЯ 10

  11. СООБЩЕНИЯ МОГУТ БЫТЬ РАЗНЫМИ ПО ТИПУ СОДЕРЖИМОГО 11

  12. СООБЩЕНИЯ МОГУТ ИМЕТЬ РАЗЛИЧНЫЕ ЗАГОЛОВКИ 12

  13. ПОТРЕБИТЕЛИ (получатели) 13

  14. ПОТРЕБИТЕЛИ ПОЛУЧАТЕЛИ В AMQP 14

  15. РАЗНОВИДНОСТИ ПОЛУЧАТЕЛЕЙ ПО ДОСТАВКЕ СООБЩЕНИЙ 15

  16. РАЗНОВИДНОСТИ ПОЛУЧАТЕЛЕЙ ПО БАЛАНСИРОВКЕ 16

  17. РАЗНОВИДНОСТИ ПОДТВЕРЖДЕНИЯ СООБЩЕНИЙ 17

  18. ОБМЕННИКИ И СВЯЗКИ 18

  19. ОБМЕННИК – ТОЧКА ПРИЕМА И РАСПРЕДЕЛЕНИЯ СООБЩЕНИЙ 19

  20. ОБМЕННИК ТОЖЕ ИМЕЕТ АТРИБУТЫ 20

  21. СВЯЗКА СВЯЗЫВАЕТ ОБМЕННИКИ С ОЧЕРЕДЯМИ 21

  22. ОБМЕННИКИ – СУТЬ ПОЧТОВЫЕ ОТДЕЛЕНИЯ 22

  23. 23

  24. 24

  25. ОТПРАВИТЕЛИ (и снова получатели) 25

  26. 26

  27. КЛИЕНТЫ AMQP ИСПОЛЬЗУЮТ ОДНО TCP СОЕДИНЕНИЕ ↔ ↔ ↔ 27

  28. ПОВЕДЕНИЕ КЛИЕНТОВ AMQP 28

  29. ПОЛНАЯ КАРТИНА ВЗАИМОДЕЙСТВИЯ СУЩНОСТЕЙ AMQP 29

  30. ВИРТУАЛЬНЫЕ ХОСТЫ 30

  31. ВИРТУАЛЬНЫЕ ХОСТЫ AMQP – ЛОГИЧЕСКИЕ ГРУППЫ СУЩНОСТЕЙ 31

  32. RABBIT MQ 3 32

  33. RABBIT MQ – БРОКЕР ОЧЕРЕДЕЙ ОТ PIVOTAL® • • •

    • 33
  34. К RABBIT MQ ВОЗМОЖНЫ РАЗНЫЕ ПОДХОДЫ 34

  35. ДЛЯ ПОДКЛЮЧЕНИЯ К RABBIT MQ НУЖЕН ЛОГИН И ПАРОЛЬ 35

  36. “ 36

  37. БРОКЕР В ДЕЙСТВИИ 4 37

  38. BI BROADCAST WELCOME База данных Индексатор Генераторы карточек периодически пачки

    (bulks) загружает карточки сбрасывает метки Сложный, неоптимальный запрос Выполняется очень долго Конфликтует с загрузкой услуг Не масштабируется (работает в 1 поток) TO_INDEX=1 Прежнее устройство индексации
  39. 39 Время прежней индексации 0 50 000 100 000 150

    000 200 000 250 000 1 1 18 160 209 132 129 146 306 338 509 609 627 588 1113 1842 2319 2629 3350 4388 6743 1165523010 Время сохранения, мс Количество карточек в пачке, шт
  40. Распределение времени индексации Устранить Сократить Распараллелить

  41. BI BROADCAST WELCOME База данных bi-worker-1 Генераторы карточек Новое устройство

    индексации bi-queue welcome-queue broadcast-queue exchange по одной RabbitMQ Сервер БД INSERT/UPDATE SELECT (по ID) команда на индексацию Очереди Персистентные, приоритезированные type: direct Обработчики welcome- worker-1 broadcast- worker-1
  42. 1,000,000 42

  43. ЗАКЛЮЧЕНИЕ 5 43

  44. СУТЬ ПРЕДЫДУЩИХ 50 СЛАЙДОВ 44

  45. ПЕРВИЧНЫЙ ИСТОЧНИК ЗНАНИЙ 45

  46. ФСЁ! 46

  47. CREDITS 47