Latest web development tutorials

레디 스 트랜잭션

두 가지 중요한 보장과 레디 스 트랜잭션은 한 번에 여러 명령을 실행하고 :

  • 트랜잭션은 별도의 격리 조치입니다 : 모든 명령은 순차적으로 실행 직렬화 거래입니다. 트랜잭션이 실행되는 동안 중단 명령을 요청하는 클라이언트에 의해 전송되지 않는다.
  • 트랜잭션은 원자 작업입니다 : 트랜잭션의 명령은 다음 중 하나를 모두 실행되거나 모두 실행되지 않습니다.

시작부터 다음과 같은 세 가지 단계를 통해 실행에 트랜잭션 (transaction) :

  • 트랜잭션을 시작합니다.
  • 팀에 명령.
  • 집행 지점입니다.

는 트랜잭션의 예입니다 다음, 먼저 트랜잭션의 모든 명령과 함께 마지막EXEC 명령 트랜잭션에 의해 트리거 트랜잭션에 팀으로 다음, MULTI여러 명령을 사업을 시작했다 :

redis 127.0.0.1:6379> MULTI
OK

redis 127.0.0.1:6379> SET book-name "Mastering C++ in 21 days"
QUEUED

redis 127.0.0.1:6379> GET book-name
QUEUED

redis 127.0.0.1:6379> SADD tag "C++" "Programming" "Mastering Series"
QUEUED

redis 127.0.0.1:6379> SMEMBERS tag
QUEUED

redis 127.0.0.1:6379> EXEC
1) OK
2) "Mastering C++ in 21 days"
3) (integer) 3
4) 1) "Mastering Series"
   2) "C++"
   3) "Programming"

레디 스 transaction 명령

다음 표는 레디 스 문제에 대한 명령을 나열 :

아니오. 명령 및 설명
(1) DISCARD
트랜잭션 취소 트랜잭션 블록 내에서 모든 명령을 제공합니다.
EXEC
블록 내의 모든 트랜잭션을 실행합니다.
3 MULTI
이것은 트랜잭션 블록의 시작을 표시한다.
4 주시 해제
키를 모두 모니터링 할 수 WATCH 명령을 취소합니다.
(5) [... 키] 키를보고
이 (또는 이들) 키는 트랜잭션을 실행하기 전에, 트랜잭션이 중단 될 다른 명령을 변경 한 경우, 하나 (또는 ​​그 이상)의 키를 모니터한다.