疑點如下偽代碼中//其中con客戶端redis鏈接,key1,key2分別是兩個鍵funchandler(con,key1,key2){con.mutl()con.set(key1,value1)//我的疑問是在這里:當本事務執行的過程中,也就是被redis-server執行的過程中,//key2的值沒有沒有可能被改變?在什么情況下才會變?謝謝您的回答con.exec()}MUTL/EXEC執行事務中redis是不是還可以同時改變其他的鍵值?概念理解redis事務的作用:1.保證被事務包含的命令要么全部執行,要么全部不執行(注意:在執行事務的過程中遇到錯誤可能會導致有些命令不能執行).2.保證被事務包含的命令執行時不被打斷.對于第二點來說,于任何客戶端來說啟用多線程來執行被事務包含的代碼沒多大效果;因為redis是一個進程(沒有多線程),也就是說執行體只有一個;同時又因為事務的存在,同一時刻只有一個事務在執行(事務包含命令沒有并行執行),所以說客戶端通過多線程方式執行被redis事務包含的命令作用不大;同時也說明被事務包含的代碼可以防止資源的競爭.偽代碼說明fori=0;i
跪求!Understand Redis Transaction 求指導!
森林海
2019-07-28 12:33:10