2016-09-08 2 views
0

프로젝트에 Apache Usergrid를 사용하고 있습니다. 그러나 나는 그 카운터에 심각한 문제가있다. 카운터를 업데이트하는 데 30 초 정도 걸릴 수 있습니다. 그래서 usergrid 카운터 이외의 것을 사용하고 싶습니다. 제 질문은 :Apache Usergrid 카운터의 대안

redis, postgresql 또는 memcached에 대한 구조가 있으므로 계층 적 카운터를 사용할 수 있습니다. 아니면 그 목적을위한 다른 도구가 있습니까?

감사합니다.

답변

1

Redis에는 해당 카운터가 없지만 lua 스크립트로 구현할 수 있습니다. ,"first.second.third"

계층 카운터

당신이"first.second.third"의 이름으로 카운터를 증가 할 때마다 자동으로 3 개 카운터를 증가 "first.second""first".

계층 카운터 루아 스크립트 : hc.lua

local key = KEYS[1] 
while key do 
    redis.call("incrby", key, ARGV[1]) 
    key = string.match(key, "(.+)%.") 
end 

redis-cli으로 시도 :

./redis-cli --eval hc.lua first.second.third , 2 
(nil) 
./redis-cli mget first first.second first.second.third 
1) "2" 
2) "2" 
3) "2" 
관련 문제