могу пофиксить баг. в общем в моем сервисе есть три составляющих: менеджер (управляет подписками), фронтенд (принимает сообщения извне и передает косьюмеру) и консьюмер - сортирует сообщения по фильтрам и передает подписчикам
так вот, раньше все работало - при запуске сервисов они доставали из базы информацию о подписке, создавали необходимые стримы и все работало
сейчас когда я реализовала запрос на создание новой подписки через менеджера все изменилось. логика работы:
1. менеджеру приходит запрос на создание подписки
2. он сообщает об этом по системному каналу
3. фронтенд и консьюмер слушают системный канал и создают необходимые стримы для этой подписки
4. когда фронту пришло новое сообщение, он пишет это в стрим, который слушает консьюмер. консьюмер получает сообщение, фильтрует, определяет подписчиков и рассылает по их очередям
и вот как раз проблема с последним шагом. после того, как консьюмер обработал фильтры и определил подписчиков, он пытается закинуть сообщение в нужные очереди, но выкидывает ошибку nats: no responders available for request. при этом в логах написано, что он успешно подписан на стримы для этих подписчиков
может кто подсказать что нибудь?
Если из всего этого текста убрать все кроме: У меня с jetstream ошибка: nats: no responders available for request То количество полезной инфы бы не изменилось)
Мб в стриме не тот filter subject?
Спасибо, завтра проверю этот момент
Обсуждают сегодня