Redis 작가 이야기 Redis 응용 장면
다음으로 전송:
http://blog.nosqlfan.com/html/2235.html
의심 할 여지없이 Redis 는 새로운 데이터 저장 방향 을 열 었 다. Redis 를 사용 하면 우 리 는 기능 이 단조 로 운 데이터 베 이 스 를 직면 할 때 코끼리 를 냉장고 에 어떻게 넣 는 지 에 신경 을 쓰 지 않 고 Redis 의 유연 하고 변화 가 많은 데이터 구조 와 데이터 조작 을 이용 하여 서로 다른 코끼리 에 게 서로 다른 냉장 고 를 구축 할 수 있다.이 비 유 를 좋아 하 시 길 바 랍 니 다.
다음은 새로 나 온 글 입 니 다. 그 작 가 는 Redis 작가 @ antirez 입 니 다. 그 는 Redis 가 비교적 적합 한 응용 장면 을 묘 사 했 습 니 다. NoSQL Fan 은 여기 서 간단하게 열거 하여 여러분 께 보 여 드 리 겠 습 니 다.
1. 최신 N 개의 데 이 터 를 가 져 오 는 동작
예 를 들 어 전형 적 으로 당신 사이트 의 최신 글 을 추출 하고 다음 과 같은 방식 으로 우 리 는 최신 5000 개의 댓 글 의 ID 를 Redis 의 List 집합 에 두 고 집합 을 초과 한 부분 을 데이터 베이스 에서 얻 을 수 있 습 니 다.
FUNCTION get_latest_comments(start,num_items):
id_list = redis.lrange("latest.comments",start,start+num_items-1)
IF id_list.length < num_items
id_list = SQL_DB("SELECT ... ORDER BY time LIMIT ...")
END
RETURN id_list
END
만약 에 다른 선별 차원, 예 를 들 어 특정한 분류의 최신 N 조 가 있다 면 이 분류 에 따 른 List 를 다시 만 들 수 있 고 ID 만 저장 하면 Redis 는 매우 효율 적 입 니 다.
2. 랭 킹 응용, TOP N 조작
이 수 요 는 상기 수요 와 다른 점 은 앞에서 조작 하 는 것 이 시간 을 가중치 로 하 는 것 이다. 이것 은 특정한 조건 을 가중치 로 하 는 것 이다. 예 를 들 어 꼭대기 의 횟수 에 따라 순 서 를 매 길 때 우리 의 sorted set 가 나 서 야 한다. 정렬 할 값 을 sorted 로 설정 해 야 한다. set 의 score 는 구체 적 인 데 이 터 를 해당 하 는 value 로 설정 하고 매번 ZADD 명령 만 실행 하면 됩 니 다.
3. 기한 이 지난 시간 을 정확하게 설정 해 야 한다.
예 를 들 어 위 에서 말 한 sorted set 의 score 값 을 기한 이 지난 시간 스탬프 로 설정 할 수 있 습 니 다. 그러면 기한 이 지난 시간 에 정렬 하고 기한 이 지난 데 이 터 를 정기 적 으로 지 울 수 있 습 니 다. Redis 의 기한 이 지난 데 이 터 를 지 울 뿐만 아니 라 Redis 의 기한 이 지난 시간 을 데이터베이스 에 있 는 데이터 에 대한 색인 으로 생각 하고 Redis 로 어떤 데 이 터 를 기한 이 지난 후에 삭제 해 야 하 는 지 찾 을 수 있 습 니 다.그리고 데이터베이스 에서 해당 하 는 기록 을 정확하게 삭제 합 니 다.
4. 카운터 적용
Redis 의 명령 은 모두 원자 적 이 므 로 INCR, DECR 명령 을 쉽게 이용 하여 카운터 시스템 을 구축 할 수 있 습 니 다.
5. Uniq 작업, 일정 시간 동안 모든 데이터 배열 값 가 져 오기
이것 은 Redis 를 사용 하 는 set 데이터 구조 가 가장 적합 합 니 다. 데 이 터 를 set 에 계속 던 지면 됩 니 다. set 는 집합 을 의미 하기 때문에 자동 으로 무 게 를 줄 입 니 다.
6. 실시 간 시스템, 쓰레기 방지 시스템
위 에서 말 한 set 기능 을 통 해 터미널 사용자 가 어떤 조작 을 했 는 지 알 수 있 고 그 조작의 집합 을 찾 아 통계 대 비 를 분석 할 수 있다.못 하 는 것 은 없고 생각 지도 못 한 것 만 있다.
7. Pub/Sub 실시 간 메시지 시스템 구축
Redis 의 Pub/Sub 시스템 은 실시 간 메시지 시스템 을 구축 할 수 있 습 니 다. 예 를 들 어 Pub/Sub 로 구 축 된 실시 간 채 팅 시스템 의 예 가 많 습 니 다.
8. 대기 열 시스템 구축
list 를 사용 하면 대기 열 시스템 을 구축 할 수 있 고 sorted set 를 사용 하면 우선 순위 가 있 는 대기 열 시스템 을 구축 할 수 있 습 니 다.
9. 캐 시
이것 은 말 할 필요 도 없 이 성능 이 Memcached 보다 좋 고 데이터 구조 가 더욱 다양 하 다.
출처: antirez. com
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.