RPUSH key value

RPUSH key value 1.0.0 버전 이상 시간 복잡도 이름이 key인 리스트 자료구조의 마지막(오른쪽)에 값을 밀어(Right Push) 넣는다. Key가 없다면, 비어있는 리스트를 만든다음에 값을 밀어 넣는다. 이 명령을 이용하면, 한 번에 두 개 이상의 값을 넣을 수 있다.Push 동작 후 리스트의 길이를 반환한다. > RPUSH mylist...

SADD key member [member ...]

SADD key member 1.0.0 부터 지원 시간 복잡도 Key에 멤버를 추가한다. 멤버에 같은 값이 이미 있다면, 저장하지 않는다. 만약 키가 없다면, 새로운 set을 만들고 멤버를 추가한다. Key가 set형 데이터가 아닐 경우에는 에러를 반환한다. 이미 존재하는 모든 원소의 갯수가 아닌, set에 추가된 원소의 갯수를 반환한다.> SADD m...

SET key value

SET key value 1.0.0 버전 부터 지원 시간 복잡도 Key에 Value를 저장한다. 만약 key가 이미 있다면, value의 데이터 타입에 관계없이 덮어쓴다.2.6.12 버전 부터 아래의 옵션을 지원한다. Ex seconds Px milliseconds NX XX 2.6.12 이전에는 SETNX, SETEX, PSETEX등이 있었는데,...

SETBIT key offset value

SETBIT key offset valueSETBIT key offset value 2.2.0 부터 지원 시간 복잡도 Key에 bit를 설정한다. offset을 이용해서, bit를 설정할 위치를 설정할 수 있다. SETBIT로 특정 위치의 비트값을 0혹은 1로 설정할 수 있다. 만약 key가 없다면, 새로운 key를 만든 다음 비트를 설정한다. offs...

Redis Pub/Sub

Redis Pub/SubREDIS는 로 알려져 있다. 그런 REDIS가 Pub/Sub를 지원한다. Pub/Sub는 메시지큐와는 특성이 다르다. Pub/Sub 시스템에서는 채널에 구독 신청을 한 모든 subscriber에게 메시지를 전달한다. 메시지를 "던지는" 시스템이기 때문에, 메시지를 보관하지도 않는다. 메시지 큐 본연의 목적과는 좀 다른 기능이라고 ...

Pipelining

PipeliningRedis는 클라이언트-서버 모델을 따르는 TCP 서버로 요청/응답 프로토콜을 사용하고 있다. 이는 요청의 처리를 완료하기 위해서 아래의 과정을 따른다는 것을 의미한다. 클라이언트가 서버로 요청을 보낸다. 서버는 소켓으로 부터 요청 데이터를 읽는다. 서버는 데이터를 처리해서 응답을 보낼 준비를 한다. 일반적으로 이 과정은 blocking...