나는 내 ruby 웹 응용 프로그램 (레일)에 jeremy/statsd-ruby 클라이언트가있는 batsd (사용하는 statsd
) 라이브러리를 사용합니다. 그리고 간단한 방문 통계를 유지해야합니다. 큰! 위의 보석에서 statsd.increment('users.visits')
메서드를 사용합니다.redis batsd (statsd) 카운터
그런 다음이 조작은 새로운 sorted set
(zset
)을 작성하고 매번 한 요소 ("1338932870<X>1
처럼 보임)를 추가합니다. 왜 statsd
이 접근 방식을 사용합니까? 더 쉬울 것이고 더 빠를 것 에서 zset
이 아닌 HINCRBY 방법을 simlpe 해시와 함께 사용 하시겠습니까?
나는 알고있다. statsd
은 잘 알려져 있고 잘 알려진 도구이지만, 그게 레디 스의 스탠다드 패턴 일까? 나는 redis와 nosql을 처음 접했고, 고마워!
대단히 감사합니다. – caulfield
사실 이것은 거의 정확하게 우리가 batsd에서 zset을 사용하는 이유입니다. 우리는 기록을 원하며, 우리는이 기록을 쉽게자를 수 있기를 원합니다. 그래서 우리는 그것을 Redis에서 유지하지 않습니다 영원히 (메모리 사용을 제한하기 위해). 다른 레벨의 집계에도 INCRBY를 사용하고 zset과 비슷한 구조로 값을 디스크에 기록합니다. – Noah