Если вдруг кто прочитает и захочет мне помочь, то кратко

опишу:
Есть два сервиса: Производитель и Получатель. К получателю получается коннектятся клиенты и сидят на long polling, ждут когда им придет новое событие, а Производитель отправляет события. Они общаются между собой через Kafka
, но в кафке фиксированы топики и group id (получатель), а как мне организовать этму систему, чтобы подсоединенные клиенты заправшивали у kaffka есть ли у них новые сообщения ? Не получать же мне все абсолютно уведомления с kaffka этим получателем-сервером, чтобы потом выдавать подконнекченному пользователю, ведь для этого и создана kaffka.
Хотелось бы как то организовать, чтобы клиент подсоединялся и запускался процесс, который бы опрашивал kaffka о наличии сообщений именно для этого пользователя, но как, чет я хз(( или не понимаю чего

Палкой не бить, новичок, и спросить мне не у кого )

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

2 ответов

7 просмотров

Мне кажется, кафка для такого слабо подходит. Лучше посмотреть в сторону RabbitMQ и routing key

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

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

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

Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
А сколько часов мак держит зарядку в рабочем режиме? Например мой Redmi Mac (просто наклейка от айфона осталась, налепил) по началу держал часов 5 с парой открытых штормов и ...
Ross
8
Каким то образом можно определить ширину экрана пользователя перед загрузкой partial-а? Надо рассчитать ширину кадров слайдера для ресайза картинок для container-fluid.
Point 111
22
Ребят, а вот такой вопрос: если я владелец бота анонимного чата, в котором, например, имеются подписки, используя какую-нибудь ЮКассу (или тому подобное, в общем с налогами, в...
Eugene Неелов
8
а давно такие жирные буквы в админке?
Миша
4
Гнева и тупости пост. Как блять можно работать с маркетологами? Их в детстве всех родители случайно цепляли об дверные откосы? Поступила таска, на сайте "лишний счетчик Google...
Igor
4
а у тг (бот) апи вообще есть статусная страница, кстати?
e\\/gen
5
Вообще сейчас эти все провайдеры облаков оборзели. Если тебе нужно 4 ядра и 4 гб., хер где такую конфигурацию найдешь. Суют тебе сразу либо 8гб. либоа сразу 16 гб., они мне на...
Igor
4
Всем привет. А никто не в курсе у бота может быть заблокированна возможность принимать звезды? На одном боте вызываю sendInvoice с нужными параметрами все ок, на втором дела...
John Doe
2
Карта сайта