2013-10-30 3 views
0

저는 redis에서 머리를 감싸려고 mysql에서 왔습니다. 어떤 것들은 매우 분명했지만 한 부부가 저를 곤란하게했습니다. 그런 일들을 어떻게 할 것인가? 먼저mysql에서 Redis 로의 프로세스 변환

은 내가 먼저 일종의 먼저/온 예약 시스템을 제공합니다. 사용자가 특정 페이지로 이동하면 아래 표를 쿼리하여 첫 번째 badge을 반환하고 reservedby = 0이면 reservedby을 사용자 ID로 업데이트합니다. 사용자가 15 분 이내에 프로세스를 완료하지 않으면 reservedby0으로 재설정됩니다. 사용자가 프로세스를 완료하면 테이블에서 행을 삭제하고 badge을 사용자 데이터와 함께 저장합니다. 주문이 중요합니다. 목록의 배지가 높을수록 좋습니다. 예약 된 것으로 표시하는 대신 제거해야하는 경우 15 분 이내에 완료되지 않으면 상단으로 돌아 가야합니다. .

둘째

id | badge | reservedby 
------------------------ 
240 | abc | 4249 
241 | bbb | 0 
242 | rrr | 0 

나는 자주 변경되지 않지만 많이 조회 된 데이터의 집합을 가지고있다. 페이지가로드되면 선택 상자에 각 color이 채워지며 색상을 선택하면 그에 해당하는 smlg이 표시됩니다.

id | color | sm | lg 
--------------------------- 
1 | blue | 1 | 5 
2 | red  | 3 | 10 
3 | yellow | 7 | 8 

마지막으로

가 지금까지 사용자 데이터, 어떻게 내가 뭘하는 INCR users입니다 저장 한 후 등 그 가치와 hmset user:<INCR users value> badge "aab" joindate "10/30/2013"을 복용 등, 일반적으로이 방법을 수행해야하는 것이 무엇입니까? 반대의 순서로

답변

0

  • 예는 레디 스에서 IDs를 증가하는 방법 이잖아, 자동화 된 기능이 없습니다.

  • 테이블 변경 빈도에 따라 한 달에 한 번 정적 json 파일을 클라이언트에 제공하고 클라이언트 측에서 나머지 코드를 처리하도록 고려하는 경우.

  • ZSET을 사용하고 점수에 고유 한 값을 유지하거나에 json 값을 유지하십시오. 예약 시스템 내부 종류의 난 쉽게 사이트를 예약 할 수 짜증이 여러 HTTP 요청을 전송함으로써, 단순히 제공 이럴

, 다른 생산 웹 사이트는 제한으로 먼저 지불 방을 가지고있는 사용자까지이 지불은 성공하면 처리되고 실패하면 다시 되돌아옵니다.