Редис не так сложно, как кажется, плюс у него есть прикольные штуки для работы в состоянии гонки. Думаю, если два потока могут начать работать с одними данными, это самое то
Редис не так сложно, как кажется, плюс у него есть прикольные штуки для работы в состоянии гонки. Думаю, если два потока могут начать работать с одними данными, это самое то
Пока не очень хочу отдельный сервис ставить. Стейт не большой будет.
Редис не так сложно, как кажется, плюс у него есть прикольные штуки для работы в состоянии гонки. Думаю, если два потока могут начать работать с одними данными, это самое то
И проблема не в том что два потока могут работать с одними данными.
Консумер какое-то время работает с данными, пока не обработает не маркирует их как обработанные.
+ в очереди могут оставаться какие-то сообщения еще не вытянутые от туда.
Получается чтобы избежать дубликатов мне нужно дождаться двух событий: 1. Подождать пока консумеры обработают и промаркируют все данные как выполнененые. 2. Дождаться чтобы в очереди было 0 сообщений
Только после этого я могу вгрузить новую партию сообщений.