Всем привет, в может ли Кафка продюсеру возвращать ответ, что

сообщение не консьюмеры не вычитали сообщение в течении какого то времени?

15 ответов

28 просмотров

нет, а что с сообщениями хотите делать? возможно поможет компакт топик ещё возможно получать оффсеты для консюмергруппы и считать лаг

Roman-Khait Автор вопроса
Yegor
нет, а что с сообщениями хотите делать? возможно п...

Все сложней. Бывают ситуации когда сам консьюмер зависает

Roman Khait
Все сложней. Бывают ситуации когда сам консьюмер з...

а-ля тригер на удаление? эту логику просто на консюмере надо реализовать, если сообщение не проходит по ттл - что-то с ним сделать

Roman-Khait Автор вопроса
Yegor
а-ля тригер на удаление? эту логику просто на конс...

Все сложней. Бывают ситуации когда сам консьюмер зависает. И продюсер должен пометить, что данное сообщение, не обработано. В эту концепцию хорошо ложится рест, но думал, может есть и через Кафку такая возможность.

Roman-Khait Автор вопроса
Yegor
нет, а что с сообщениями хотите делать? возможно п...

Через лаг, выгрузку сообщения и с двиг офсет, можно. Но по факту это костыль

Roman Khait
Через лаг, выгрузку сообщения и с двиг офсет, можн...

у кафки может быть множество консюмеров, это не очередь, а еще есть повторные чтения

Roman-Khait Автор вопроса
Yegor
у кафки может быть множество консюмеров, это не оч...

В рамках группы все равно вычитка происходит раз. В текущей ситуации один модуль будет работать с топиком. Поэтому важно, чтобы была обратная связь не смотря не на что.

Roman Khait
В рамках группы все равно вычитка происходит раз. ...

можно сделать из консюмера продюсинг в отдельный топик и вычитка им тем, кто записал в первый сообщение)

Roman-Khait Автор вопроса
Yegor
можно сделать из консюмера продюсинг в отдельный т...

Опять же, не со всем понятно как определить что сообщение прочиталось, если будет другая группа. А если та же, то Кафка не даст ему вычитать партицию, если уже есть подключённый к ней консьюмер

Roman-Khait Автор вопроса
Dmitry M
Зависание консьюмера звучит как баг.

Да, и мне нужно обработать такие ситуации)

Roman Khait
Да, и мне нужно обработать такие ситуации)

Если нет сил найти баг, то можно убивать консюмер

Roman-Khait Автор вопроса
Dmitry M
Если нет сил найти баг, то можно убивать консюмер

Тут речь не в силах, а в обработки. У меня нет бага, у меня есть задача поработать интеграцию. Хотел при помощи Кафки, но задача выглядит провальной.

Roman Khait
Опять же, не со всем понятно как определить что со...

С точки зрения кафки продюсер ничего не знает о консюмерах, а консюмеры ничего о продюсерах. У всех консюмер-групп есть закоммиченные оффсеты в рамках чтения топик-партиций. Можно получать оффсеты для консюмер-группы, посмотреть какие консюмер-группы что прочитали. Если продюсер будет трекать для каждого отправленного сообщения его оффсет в рамках партиции, то через admin api можно будет получать актуальные оффсеты и сравнивать их, в том числе таймштампы и делать уже какую-то определенную логику. Но все равно это дурно пахнет

Roman-Khait Автор вопроса
Yegor
С точки зрения кафки продюсер ничего не знает о ко...

Согласен, тут проще grpc или классический rest

Похожие вопросы

Обсуждают сегодня

Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Или кинули уже?
Magic
6
Всем привет, описание проблемы: локально достучаться до сервера не получилось, получаю ошибку с текстом Packet received out-of-order. Expected 0; got 45. Проблема с протоколом...
Yernur
1
вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Всем салют, заинтересовался odoo, хотел бы поинтересоваться на счёт этой ERP , прогеры которые работают над проектами вы используете odoo как серверную платформу работая с RES...
⚔️
8
40 тысяч в час / 3600 = 11,11 в секунду... Вам точно нужна очередь? (я просто не знаю "контекста") Такое количество запросов любое приложение замечательно "прожует" и не попер...
Igor Mitin
5
То есть если оно есть, то дальше всем похуй, даже если я рядом ссылку на оплату ставлю?
■_|ilya|_■
3
А как асинхрон иначе реализован? Пардон:)
Ivan K 🏄🏻‍♂️
7
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Добрый день! Кто-нибудь сталкивался со следующей проблемой? В Тейлоре при изменении репитера через черновик, при сохранении и применении черновика поле с репитером не перезапи...
Николай Афанасенко
1
Карта сайта