на продюсере, можете конкретно сказать?
Он упадет и ты его потеряешь
Cпасибо. Значит надо реально какой-нибудь Redis поднять.
Он упадет и ты его потеряешь :)
Подозреваю, что вопросы возникают от того, что это выглядит как попытка решить несуществующую проблему. Почему нужно избегать дубликатов в очереди?
Его в кластере нельзя задеплоить? Просто отказывать от шины не хочется совсем 🙂
Эти данные очень не желательно обрабатывать по два раза.
Так вам надо научиться их идемпотентно обрабатывать :)
Нежелательность может быть вызвана разными причнами. Например это очень долго. Или из-за этого деньги теряются. Вот от второго типа “нежелательности” нужно уходить, потому что обработать сообщение ровно один раз все равно не получится. Хотя бы из-за сбоев
В целом кстати если даже сервер перезагрузится. То я могу на перезапуске запуржить очередь и влить туда новую пачку. В таком случае максимум где будут дубли это те данные которые были в обработке и не успели промаркироваться. Короче очень приемлимый % потерь.
Хотя в приложении решаются другие задачи. Суть очень похожа на кравлер, в котором нежелательно ходить по одним и тем же страницам иначе это может превратится в инфинити лупс.
Обсуждают сегодня