nginx - Redis 事务理解 云课堂问答
概念理解
redis 事务的作用:
1.保证被事务包含的命令要么全部执行,要么全部不执行(注意:在执行事务的过程中遇到错误可能会导致有些命令不能执行).
2.保证被事务包含的命令执行时不被打断.
对于第二点来说,于任何客户端来说启用多线程来执行被事务包含的代码没多大效果;因为
redis是一个进程(没有多线程),也就是说执行体只有一个;同时又因为事务的存在,同一时刻只有一个事务在执行(事务包含命令没有并行执行),所以说客户端通过多线程方式执行被redis事务包含的命令作用不大;同时也说明被事务包含的代码可以防止资源的竞争.
伪代码说明
`
for i = 0 ; i < 3 ; i++ {
newThread.doTaskBackground(doTransTask);}
doTransTask() {
MULTI;// other commands set key1 value1 EXEC; }
`
以上是自己的理解,有错误的地方还请指出. 如果您有什么心得也可以告知与我.谢谢!




添加回答