с определенного ресурса, у обьяв есть категории, по которым подписчки на бота выбирают себе подписку на определенные обьявы. Как организовать рассылку обьяв клиентам?
как работает это сейчас (решение было в лоб), 4 минуты, каждую минуту парсер ходит на ресурс собирает там обьявы и кладет в БД, потом на пятую минуту запускается крон рассылки по подпискам обьяв, которые были собраны за последние 5 минут, и все работало до того момента, пока не набралось много подписчиков и крон не успевает за минуту сделать рассылку и некоторые подписчики не дополучают обьяв ибо смещается время.
как я вижу выход из ситуации, обьявы класть в очередь, дальше проходится по каждой обьявле и смотреть есть ли какая то подписка на эту обьяву или нет, если есть делать рассылку и удалять из очереди. Привлечь к этому всему хочу RabbitMQ (раньше с ним не работал, но вроде бы почитал о нем, и можно это организовать).
норм план? или есть какие то другие варики? Спасибо.
все верно очередь. а еще лучше нормальный пайплайн (типа kafka streams)
Обсуждают сегодня