Size: a a a

Архитектура ИТ-решений

2019 August 20

EI

Eugene Istomin in Архитектура ИТ-решений
Phil Delgyado
Тут как раз схема Кафки с минимальным числом подтверждений и возможностью задать rack очень удобна.
Да, понятный паттерн.
Не понятный, например - это с одним инстансом кафки и одним инстансом zk организовывать локальный (в пределах l1/l2-связности) event-streaming.
источник

EI

Eugene Istomin in Архитектура ИТ-решений
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Eugene Istomin
Да, понятный паттерн.
Не понятный, например - это с одним инстансом кафки и одним инстансом zk организовывать локальный (в пределах l1/l2-связности) event-streaming.
А почему один брокер? Если бы там была СУБД - все равно поставил бы standby, если простой актуален. А если нет - то и пофиг )
источник

PD

Phil Delgyado in Архитектура ИТ-решений
С кафкой (и другими очередями) другая беда: при отказе брокера, а за ним продьюсера - теряются сообщения. Редкий кейс, но неприятный...
источник

PD

Phil Delgyado in Архитектура ИТ-решений
(есть варианты обхода, но не очень удобные...)
источник

EI

Eugene Istomin in Архитектура ИТ-решений
Phil Delgyado
А почему один брокер? Если бы там была СУБД - все равно поставил бы standby, если простой актуален. А если нет - то и пофиг )
Отвечу "потому что так было можно сделать".
Прямо по тексту " Сейчас я вижу, что часто kafka используется как решение без понимания того, какие проблемы оно может принести в проект. "
источник

P

Pavel in Архитектура ИТ-решений
Phil Delgyado
С кафкой (и другими очередями) другая беда: при отказе брокера, а за ним продьюсера - теряются сообщения. Редкий кейс, но неприятный...
Отказ какой имеется в виду? Сервер умер или просто брокер упал?
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Eugene Istomin
Отвечу "потому что так было можно сделать".
Прямо по тексту " Сейчас я вижу, что часто kafka используется как решение без понимания того, какие проблемы оно может принести в проект. "
Так такие проблемы будут у любого брокера. В доке по Кафке хотя бы написано, что так делать можно только в тестовом окружении.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Pavel
Отказ какой имеется в виду? Сервер умер или просто брокер упал?
Брокер умер или сеть к брокеру умерла. Главное - что сообщения в буфере на продьюсере копиться начали.
источник

P

Pavel in Архитектура ИТ-решений
Phil Delgyado
Брокер умер или сеть к брокеру умерла. Главное - что сообщения в буфере на продьюсере копиться начали.
А, я понял. Но это действительно крайне редкий случай.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Ну, для платежей приходится рассматривать.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
У кафки есть кучка проблем:
1) дорогое создание топиков (т.е. не по создаешь на каждый платеж, например)
2) нет (насколько я помню) синхронного suspend send (для простой асинхронности на корутинах)
3) достаточно сложно делать свои политики управления распределением партиций (если нужна канарейка или dog-food)
4) Kafka connect нормальный только для Oracle+GoldenGate, для постгре пока сырой.
Все решается, но не всегда просто.
Но в остальных очередях - проблем еще больше.
Хотя Pulsar интересен, но пока еще не достаточно зрелый.
источник

LV

Leonid Vygovskiy in Архитектура ИТ-решений
Для забора из БД для кафки есть https://debezium.io/
источник

LV

Leonid Vygovskiy in Архитектура ИТ-решений
Еще вспомнил, чем мне кафка мешает. Максимальный размер сообщения. Можно и здесь сильно прогореть, если гонять по именно данные.
источник

LV

Leonid Vygovskiy in Архитектура ИТ-решений
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Leonid Vygovskiy
Еще вспомнил, чем мне кафка мешает. Максимальный размер сообщения. Можно и здесь сильно прогореть, если гонять по именно данные.
Ну, там размер настолько большой, что беда только если файлы гонять. Но если десятимегабайтные сообщения отправлять, то все  очереди будут ругаться.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Leonid Vygovskiy
Для забора из БД для кафки есть https://debezium.io/
Вот он и сырой пока )
источник

LV

Leonid Vygovskiy in Архитектура ИТ-решений
rmq не будет. Ему не понравится с точки зрения перфоманса, но он съест. А кафка просто передать нельзя.
источник

PD

Phil Delgyado in Архитектура ИТ-решений
Leonid Vygovskiy
rmq не будет. Ему не понравится с точки зрения перфоманса, но он съест. А кафка просто передать нельзя.
Ну, там на уровне топика можно подкрутить. Только не факт, что rmq съест, а не упадет, там по разному бывает...
источник

LV

Leonid Vygovskiy in Архитектура ИТ-решений
Я видел систему, в которой средний размер сообщения 8кб. Для хранения документов была выбрана mongodb, в которой максимальный размер документа - 16Мб. Казалось, бы запас прочности - три порядка. Но нашлись документы размерами в 300Мб...
источник