Redisson — RSortedSet

Мне нужно сохранить порядок элементов, добавленных в SET в Redis. Для этого я использую RSortedSet с собственным компаратором.

Проблема, с которой я столкнулся, заключается в том, что, в отличие от RSetCache, я не могу истечь сроком действия элементов в этом наборе.

Есть ли обходной путь для достижения этого варианта использования?


person Bala.vrad    schedule 05.07.2017    source источник


Ответы (1)


Во-первых, RSortedSet реализован поверх Redis LIST, а не SET. Существует RScoredSortedSet, который реализован поверх Redis ZSET.

Чтобы добиться истечения срока действия элемента, в качестве обходного пути вы можете обернуть его другим объектом RExpirable перед добавлением в RSortedSet. Вам просто нужно позаботиться о себе: когда вы получаете объект RExpirable, но он не существует (isExists возвращает false), это означает, что срок его действия истек. Затем вы можете самостоятельно удалить его из RSortedSet.

person Redisson_RuiGu    schedule 05.07.2017