Разбираем основы Kafka и RabbitMQ

  Рет қаралды 13,676

Digital Train | Alex Babin

Digital Train | Alex Babin

Күн бұрын

Пікірлер: 23
@bek15071991
@bek15071991 2 ай бұрын
Топчик, самые важные моменты без воды!
@alexprogrammer
@alexprogrammer 4 ай бұрын
Спасибо. Отличная подача материала. Можно в том числе слушать фоном параллельно с какими то делами - воспринимается хорошо.
@eiiot8650
@eiiot8650 2 ай бұрын
Самое подробнное видео в интернете. И не только в ру сегменте
@shnireck
@shnireck 8 ай бұрын
спасибо! автор прошел в миллиметре от утверждения что в кафке нет acnowledgment однако, прошел, лайк:)
@tihon4979
@tihon4979 9 ай бұрын
Доступно. Понятно. Без воды. Лайк. Подписка.
@do_bro
@do_bro 8 ай бұрын
Спасибо. За полчаса всё по полочкам разложил
@nikolaykozlov4888
@nikolaykozlov4888 9 ай бұрын
Отличное представление информации. Просто огонь! Спасибо
@prostoprosa
@prostoprosa 9 ай бұрын
Большое спасибо за видео. Понятно и доступно)
@ivanstrelka3448
@ivanstrelka3448 9 ай бұрын
Топ контент! Спасибо
@sergeystarostin179
@sergeystarostin179 9 ай бұрын
Спасибо. Еще бы добавить nats/nats streaming.
@vladimir_nevzorov
@vladimir_nevzorov 9 ай бұрын
Классное видео! Спасибо!
@ВасилийЖданов-б7р
@ВасилийЖданов-б7р 9 ай бұрын
спасибо!!!
@serb1146
@serb1146 9 ай бұрын
Спасибо.
@novmicha
@novmicha 9 ай бұрын
Про multi stage pipeline очень вскользь сказано, хотелось бы на конкретном примере. Например как организовать транзакцию когда идет целый ряд событий как результат одного. К примеру типовая ситуация: заказ от пользователя (оплата-пересчет остатков-информирование).
@digital_train
@digital_train 9 ай бұрын
Отличный вопрос, как раз разбирали его на теме про паттерны микросервисной архитектуры. Если коротко - транзакционность между микросервисами это дорого и сложно, но есть подходы к организации Тут пример kzbin.info/www/bejne/jJqmdWd7h89obZosi=M7WRUakxvd6PIYtH 1. Event sourcing 2. Saga pattern
@jonkarmok1840
@jonkarmok1840 9 ай бұрын
Я правильно понимаю что у Rabbit должны быть ниже задержки, чем у Kafka?
@digital_train
@digital_train 9 ай бұрын
Если мы говорим на задержку на чтение и обработку сообщения то за счет структуры Kafka сообщение будет проходить быстрее, т.к. там по сути отсутствует умный роутинг и т.д. Но если наша задача выглядит как в зависимости от сложной логики раскидать сообщение по группам, с какими-нибудь полиси. То тут RabbitMQ будет быстрее так как в Kafka нет внутренних механизмов и все прийдется делать во внешнем сервисе, следовательно только передача сообщения между очередью и сервисом съест львиную долю времени Если суммировать, смотрите на ваш кейс_
@egor.cleric
@egor.cleric 9 ай бұрын
Мне кажется автор натягивает сову на глобус говоря, что RabbitMQ это про Push. Сам брокер не знает адреса потребителей, они к нему подключаются и запрашивают новые сообщения. Это только запутывает
@digital_train
@digital_train 9 ай бұрын
Действительно это может немного смущать что rabbitmq ориентирован на push based. В нем есть два типа API push & pull но в большинстве случаев используется push подход (www.rabbitmq.com/docs/consumers#subscribing )
@paemox
@paemox 9 ай бұрын
Очереди сообщений не нужны практически никогда! Для этого есть обратный прокси и балансировщик nginx/Apache.
@digital_train
@digital_train 9 ай бұрын
Действительно в самых простых случая очередь можно заменить на реверс + LB Но это только часть функциональности, очереди так же: - Автоматически масштабируются при добавлении и удалении нод из кластера - Могут гарантировать транзакционность и использовать различные стратегии доставки - Часть из очередей могут использоваться в виде хранилища events в event-driven архитектуре - Так же поверх них удобно строить real-time стримы данных и событий и не переживать за то что какой-то из consumer упадет Важно посмотреть на кейс и уже после решать нужна ли очередь или нет
@paemox
@paemox 9 ай бұрын
@@digital_train - Балансировщик тоже может добавлять и удалять ноды - Если пользователь не получает ответ в течении 30 секунд, то в большинстве случаев он перестает его ждать и уходит. Поэтому нет смысла накапливать сообщения в надежде когда-то там обработать все. - Событийная архитектура усложняет разработку, если система не помещается на сервер, то лучше использовать шардирование, а не разбиение на подсистемы, что связаны событиями. - После падения консюмеров забивается и падает очередь, что делает ее бессмысленной для спасения. Проще разруливать падение на клиенте путем повторных запросов.
@jewgenijmoldawski3306
@jewgenijmoldawski3306 9 ай бұрын
Есть задачи, в которых поток запросов имеет ярко выраженные короткие пики, а в остальное время почти ноль. В этих случаях, если время ответа некритично или ответ вообще не предусмотрен, очередь очень помогает дешево разгрузить обработчики.
Основы Apache Kafka
2:09:06
Уголок сельского джависта
Рет қаралды 4,9 М.
Про Kafka (основы)
49:23
Владимир Богдановский
Рет қаралды 430 М.
Война Семей - ВСЕ СЕРИИ, 1 сезон (серии 1-20)
7:40:31
Семейные Сериалы
Рет қаралды 1,6 МЛН
Жездуха 41-серия
36:26
Million Show
Рет қаралды 5 МЛН
GIANT Gummy Worm #shorts
0:42
Mr DegrEE
Рет қаралды 152 МЛН
Andro, ELMAN, TONI, MONA - Зари (Official Music Video)
2:50
RAAVA MUSIC
Рет қаралды 2 МЛН
Типичные ошибки при работе с Apache Kafka - Виктор Корейша
54:47
Spectr | Все об IT и разработке
Рет қаралды 4 М.
«Битва брокеров сообщений: Kafka, RabbitMQ, SQS»
1:57:07
Яндекс Практикум
Рет қаралды 14 М.
Тестирование микросервисов | Microservices testing
1:05:29
Digital train | Alex Babin
Рет қаралды 1,9 М.
Григорий Кошелев - Kafka: от теории к практике
1:03:30
DotNext — конференция для .NET‑разработчиков
Рет қаралды 38 М.
When to Use Kafka or RabbitMQ | System Design
8:16
Interview Pen
Рет қаралды 176 М.
Модель результат_версия 2
30:06
Alex Volkov
Рет қаралды 21
Война Семей - ВСЕ СЕРИИ, 1 сезон (серии 1-20)
7:40:31
Семейные Сериалы
Рет қаралды 1,6 МЛН