В Redis sorted set идентификатор задачи можно хранить как member, а время запуска — как score. Готовые задачи выбирают по score не больше текущего времени.
Как работает Redis sorted set для хранения отложенных задач и сколько памяти занимает?
В Redis sorted set идентификатор задачи можно хранить как member, а время запуска — как score. Готовые задачи выбирают по score не больше текущего времени.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В Redis sorted set идентификатор задачи можно хранить как member, а время запуска — как score. Готовые задачи выбирают по score не больше текущего времени.
Захват задачи должен быть атомарным и сопровождаться lease либо переносом в processing-набор, иначе сбой после удаления потеряет работу. Payload удобно хранить отдельно. Память зависит от длины ID, количества элементов, encoding и версии Redis; измеряйте MEMORY USAGE на типичных данных. Фиксированного числа байтов на задачу нет.