2016-11-29 3 views
0

Django 앱에서는 사용자 ID가 현재 시간의 점수로 저장되는 전역 정렬 세트를 유지하기 위해 redis를 사용합니다.트리밍 정렬 기준 점수

11 분마다 정렬 된 집합을 이전 10 분에 저장된 값으로 줄이는 비동기 작업을 실행하려고합니다. 을 초과하는 항목이 없습니다.

다음과 같이 수행할까요? 나는 (등 등이 기존의 모든 값이 삭제됩니다 보장합니다 또는 일부 누출을 것이다) 가장자리의 경우에 대해 확실 해요 :

time_now = time.time() #current time since epoch 
ten_mins_ago = time_now - (10*60) 
eleven_mins_ago = time_now - (11*60) 
my_redis_server.zremrangebyscore(sorted_set,eleven_mins_ago,ten_mins_ago) 

답변

1

나이가 10 분에있어 모든 것을 삭제하는 문자열 값 -infeleven_mins_ago 교체 어떤 "누출"도 피하십시오. 자세한 내용과 설명은 ZRANGE의 설명서 페이지 Exclusive intervals and infinity 섹션을 참조하십시오.

+0

redis-py 문서보다 훨씬 좋은 리소스입니다. –