redis 튜토리얼
redis 시작하기
수색…
비고
이 섹션에서는 Redis의 개념과 개발자가 왜 그것을 사용하고 싶어하는지에 대한 개요를 제공합니다.
또한 Redis 내의 모든 큰 주제를 언급하고 관련 주제에 링크해야합니다. Redis의 설명서는 새로운 기능이므로 해당 관련 항목의 초기 버전을 만들어야 할 수 있습니다.
버전
번역 | 출시일 |
---|---|
3.2.3 | 2016-08-02 |
3.2.2 | 2016-07-28 |
개요
Redis는 고성능, 복제 및 고유 한 데이터 모델을 제공하여 문제를 해결하기위한 플랫폼을 생성하는 인 메모리 원격 데이터베이스입니다. Redis는 데이터베이스, 캐시 및 메시지 브로커로 사용되는 오픈 소스 (BSD 라이센스), 메모리 내 데이터 구조입니다. NoSQL 키 - 값 저장소로 분류됩니다. 반경 쿼리를 사용하여 문자열, 해시, 목록, 세트, 범위 쿼리, 비트 맵, 하이퍼 로그 로그 및 지형 공간 인덱스가있는 정렬 된 세트와 같은 데이터 구조를 지원합니다. 다섯 가지 유형의 데이터 구조를 지원하며,
- STRING (전체 문자열, 부분, 정수 및 부동 소수점에 대해 연산)
- 목록 (양쪽에서 푸시 또는 팝 항목)
- SET (추가, 가져 오기, 제거, 확인, 교차, 합집합, 차이 등)
- HASH (저장, 패치, 해시로 제거)
- ZSET (세트와 동일하지만 순서대로)
- GEO (위도 및 경도 추가, 업데이트, 삭제, 주어진 redius 내에서 가져 오기)
Redis는 내장 된 복제, Lua 스크립팅, LRU 축출, 트랜잭션 및 다른 수준의 디스크 지속성 (동기화 / 비동기)을 제공합니다.
버전 3 이전의 Redis는 마스터 - 슬레이브 모드로 작동하고 Redis-Sentinel은 고 가용성을 제공해야했습니다. 마스터는 포킹을 통해 슬레이브에 데이터를 쓰고 동기화합니다.
버전 3부터 Redis는 페일 오버, 샤딩 / 파티셔닝, 다시 공유 기능이 내장 된 멀티 마스터 모드를 작동 및 권장합니다. Redis-Sentinel은 버전 -3에서 필요하지 않습니다. Redis 클러스터가 작동하려면 최소한 3 개의 마스터 노드 / 프로세스가 필요합니다.
추가 기능으로는 복제, 지속성 및 클라이언트 측 샤딩이 있습니다. Redis는 Redis가 제공하는 것과 같이 자연스럽게 매핑 될 수있는 다양한 문제를 처리하므로 다른 데이터베이스에서 요구하는 개념 작업을 수행하지 않고도 문제를 해결할 수 있습니다.
Redis 명령 줄 인터페이스
redis-cli
는 Redis 명령 줄 인터페이스 프로그램으로, Redis에 명령을 보내고 서버에서 직접 보낸 응답을 터미널에서 읽을 수 있습니다. 기본 명령 줄 사용법은 다음과 같습니다.
홍수에 대한 액세스 :
$ redis-cli
127.0.0.1:6379>
인증을 통한 재발행 :
$ redis-cli -a myPassword
127.0.0.1:6379>
데이터베이스 선택 및 데이터베이스 크기 표시 (기본 데이터베이스 번호는 0) :
127.0.0.1:6379> dbsize
(integer) 2
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> dbsize
(integer) 20
서버에 대한 정보 및 통계를 얻으십시오.
127.0.0.1:6379> info
redis_version:2.4.10
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.6
process_id:947
uptime_in_seconds:873394
uptime_in_days:10
lru_clock:118108
used_cpu_sys:19.55
used_cpu_user:397.46
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
connected_clients:1
connected_slaves:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
used_memory:14295792
used_memory_human:13.63M
used_memory_rss:19853312
used_memory_peak:14295760
used_memory_peak_human:13.63M
mem_fragmentation_ratio:1.39
mem_allocator:jemalloc-2.2.5
loading:0
aof_enabled:0
changes_since_last_save:0
bgsave_in_progress:0
last_save_time:1468314087
bgrewriteaof_in_progress:0
total_connections_received:2
total_commands_processed:2
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:0
vm_enabled:0
role:master
db0:keys=2,expires=0
db1:keys=20,expires=0
redis-cli 종료 :
127.0.0.1:6379> exit
Redis "Hello World"
먼저 Redis 서버를 설치하고 시작해야합니다. 서버 또는 로컬 시스템에 redis를 설치하는 데 도움이되는 아래 링크를 확인하십시오.
이제 명령 프롬프트를 열고 redis-cli
명령을 실행하십시오.
첫 번째 세트를 저장하려면> SET '키 이름'을 누른 다음 '값'
127.0.0.1:6379> SET hkey "Hello World!"
보아야 할 Enter 키를 누릅니다.
OK
그런 다음 입력하십시오.
GET hkey
넌 봐야 해:
"Hello World!"
화면 출력 예 :
Docker를 사용하여 Redis 설치
docker를 사용하여 Redis를 사용하는 것은 간단합니다.
docker pull redis
docker run -p 6379:6379 --rm --name redis redis
이제 포트 6397
에서 인스턴스를 실행했습니다.
경고 : Redis가 중지되면 모든 데이터가 h 제됩니다.
redis-cli를 연결하려면 다른 도커를 시작하십시오.
docker run -it --link redis:redis --rm redis redis-cli -h redis -p 6379
이제 당신의 redis 도커와 놀 수 있습니다.
Windows의 Redis installtion과 Node.js 예제
Redis는 'Microsoft Open Technologies'에서 제공하는 Windows 포트가 있습니다. 다음에서 찾을 수있는 msi 설치 프로그램을 사용할 수 있습니다. https://github.com/MSOpenTech/redis/releases
설치가 완료되면 'Redis'는 Windows 서비스입니다 (상태는 "시작됨"이어야 함).
Node.js에서 Redis를 사용하는 'Hello world'예제 (Windows에서도 마찬가지 임)를 작성하려면 다음 npm 모듈을 사용할 수 있습니다. https://www.npmjs.com/package/redis
코드 샘플 :
var redis = require('redis'),
client = redis.createClient();
client.set('mykey', 'Hello World');
client.get('mykey', function(err,res){
console.log(res);
});