2012-10-07 2 views
1

memcached를 설정 중입니다. 키 업데이트/설정에 대한 높은 트래픽 및 모범 사례에 관한 몇 가지 질문이 있습니다. 나는 사용자가 10,50,100의 증가 점을 할당 온라인 게임을 만들고있어.높은 트래픽 - 동일한 memcached 키를 설정하라는 요청이 여러 개 있습니까?

사용 : 키에 사용자 "게임 통계"를 저장하고 5 분마다 cron 작업을 실행하여 데이터 스토어에서 통계를 영구적으로 업데이트하십시오. 이 방법으로 "게임"은 db로가는 절대 값, 점에 가지 않고도 작동 할 수 있습니다.
1)가 높은 트래픽 도로 아래로 문제가 될 그 사용자 포인트 키에 쓰기를 시도하는 것이다 :

끌어와 사용자 통계

질문에 대한 열쇠를 채울 스크립트를 따뜻하게 사용할 것인가?

2) memcache에서 값을 증가시키는 가장 좋은 방법은 무엇입니까?

이 내가 지금 memcache에있는 사용자 게임 통계를 저장하기위한

$newval = $memcache->get($key); 
$memcache->set($key, $newval+10, false, 1000) or die ("Failed to save data at the server"); 

3) 권고를 사용하고 무엇을 거친 아이디어? 모든 입력은 크게 감사하겠습니다.

감사합니다.

답변

4

Memcache에 저장된 값을 증가시킬 때 잠재적 인 경쟁 조건을 피하려면 Memcache's increment function을 사용하십시오.

증가 (예 : 0으로 재설정) 외에도 다른 수학을 수행해야하는 경우 compare and swap (cas)을 사용하십시오.

+0

감사합니다. 훌륭하게 작동합니다. 매우 감사. – btaylor507

관련 문제