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