redis 事務、Jedis事務處理流程


127.0.0.1:6379> multi
OK
127.0.0.1:6379> sadd myset a b c
QUEUED  ——>並沒有執行,排隊等待
127.0.0.1:6379> sadd myset b c d
QUEUED
127.0.0.1:6379> lpush mylist aa bb cc
QUEUED
127.0.0.1:6379> lpush mylist bb cc dd
QUEUED
127.0.0.1:6379> exec
1) (integer) 3
2) (integer) 1
3) (integer) 3
4) (integer) 6


127.0.0.1:6379> multi

OK
127.0.0.1:6379> sadd youset a b
QUEUED
127.0.0.1:6379> sadd youset b c
QUEUED
127.0.0.1:6379> discard // 取消事務
OK


Jedis事務處理流程

1、jedis.watch(key1, key2...);    // 監視keys

2、Transaction transaction = jedis.muti();    // 開啟事務

3、事務體;在事務體中,當代碼出錯或監視的key被本事務對象之外的對象修改時,事務不會提交,返回空列表

4、List<Object> result = transaction.exec();    // 提交事務

5、result.isEmpty();    // 判斷事務是否成功

6、jedis.unwatch();    // 解除監視

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM