редис элементы списка, TTL и ранжирование по счету - PullRequest
3 голосов
/ 22 сентября 2011

Я хочу отсортировать статьи блога по количеству просмотров страниц за последние 5000 просмотров.

Я экспериментировал со следующим (200, 205, 202 - идентификаторы статей блога):

ZINCRBY blog_hits 1 200
ZINCRBY blog_hits 1 200
ZINCRBY blog_hits 1 200
ZINCRBY blog_hits 1 205
ZINCRBY blog_hits 1 205
ZINCRBY blog_hits 1 202
ZRANGEBYSCORE blog_hits 0 9 WITHSCORES

Что даст мне десятку самых просматриваемых страниц. Единственная проблема заключается в том, что ZINCRBY, похоже, не имеет TTL или способа игнорирования приращений, которые происходят более 5000 приращений назад.

Есть ли способ, которым я мог бы использовать список, добавить запись идентификатора блога, затем LTRIM список и получить оценку? Если это так, не могли бы вы написать маленький пример? Если нет, я бы хотел узнать, как лучше решить эту проблему.

Спасибо, Mark

1 Ответ

1 голос
/ 25 сентября 2011

Попробуйте blog_hits_date, а затем подведите итоги недели

ZINCRBY "blog_hits_09_24_2011" 1 200
TTL "blog_hits_09_24_2011" 3600*24*7

Или переместить идентификатор с попаданиями> 5000 в другой список (* blog_hits_over_5000 *).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...