티스토리 뷰
728x90
반응형
redis는 3.0 버전부터 클러스터 기능이 예정되어 있고,
그 이하 버전에서는 별도의 분산처리를 위한 기능이 없습니다.
그래서 자체적으로 샤딩을 구축해야하는데요.
샤딩 전략은 다양하게 마련할수 있습니다.
회원ID가 1~10000인 사람은 0번 샤드
10001~20000인 사람은 1번 샤드
20001~30000인 사람은 1번 샤드
이런식으로 나눌수도 있고
회원정보는 1번 샤드
게시물 정보는 2번 샤드
기타 정보는 3번 샤드
기능별로 샤드를 분리할수도 있습니다.
또 다른 방식으로 간단하게 샤딩을 구현하기 위해서는 memcached의 방식을 이용해도 됩니다.
샤드번호 = md5('저장할key') % 샤드갯수
뭐 여기서 굳이 md5 함수 말고도 crc32나 sha1로 해도 됩니다.
저장할 key값에 따라 저장할데이터가 각 샤드에 분산배치 되는 방식입니다.
다른 샤딩 전략보다 좀 더 데이터를 각 샤드에 고르게 분산할수 있는 장점이 있습니다.
다만 이 방식의 단점은 운영중인 샤드중 하나에 장애가 발생하여 해당 샤드를 제거하고 샤드갯수를 변경하면
샤드번호가 몽땅 바뀌기 때문에 이 경우를 위한 별도의 로직을 고민해보셔야 합니다.
consistent hash 기능을 이용해도 좋고요.
728x90
반응형
'WEB2.0 > 프로그래밍' 카테고리의 다른 글
redis 메모리, 디스크 사용량 확인하기 (1) | 2014.04.01 |
---|---|
scp로 원격서버에 백업하기 (0) | 2014.03.31 |
redis 시작이 안될때 (0) | 2014.03.03 |
php로 redis 이용하기 (0) | 2014.02.28 |
그 유명한 redis(레디스)를 설치해볼까 (0) | 2014.02.11 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 네이버
- 앱스토어
- JavaScript
- 게임
- 소프트웨어
- 아이폰
- 공모전
- 창업
- Apple
- 안드로이드
- 스마트폰
- 벤처
- 애플
- 아이디어
- AWS
- android
- 웹표준
- 구글
- 자바스크립트
- CSS
- iPhone
- 경진대회
- 모바일
- 트위터
- 앱
- php
- 대학생
- 어플리케이션
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함