36.51K
Категория: ИнтернетИнтернет

message_brokers_presentation

1.

Брокеры сообщений: Kafka,
RabbitMQ и др.
Краткий обзор технологий и
концепций

2.

Что такое брокеры сообщений
• Посредники между системами для обмена
сообщениями
– Приём, буферизация и доставка сообщений
– Примеры: Apache Kafka, RabbitMQ

3.

Kafka vs RabbitMQ
• Kafka — стриминг, высокая пропускная
способность
– RabbitMQ — очереди, маршрутизация
– Kafka pull-модель, RabbitMQ push-модель

4.

Топики и партиции
• Topic — категория сообщений
– Partition — единица параллелизма Kafka
– Сообщения распределяются по ключу или
round-robin

5.

Producers и Consumers
• Producer — отправитель сообщений
– Consumer — получатель сообщений
– Kafka: consumer groups, параллелизм на уровне
партиций

6.

Как определяется партиция
• hash(key) % partitions
– Если ключ не указан — round-robin
– Можно определить кастомный партиционер

7.

Pull vs Push модель
• Kafka использует pull — consumer сам
запрашивает сообщения
– RabbitMQ использует push — брокер
отправляет сообщения
– Pull даёт контроль скорости чтения

8.

Преимущества Kafka
• Очень высокая скорость
– Длительное хранение сообщений
– Event sourcing / streaming
– Порядок сообщений в партиции

9.

Преимущества RabbitMQ
• Гибкая маршрутизация
– Поддержка RPC
– Подходит для бизнес-процессов

10.

Гарантии доставки
• At most once / At least once / Exactly once
– Kafka: offset commit, ack=all, репликация
– RabbitMQ: ack, durable очереди, publisher
confirms
English     Русский Правила