REDIS COMMAND SCHEDULER / 事务边界实验

排队不加锁,执行才不穿插

拖动两侧命令可以调整调度,也可以跨客户端转移。逐条发出命令,亲眼看清 MULTI 到 EXEC 之间,Redis 到底保证了什么、又没有保证什么。

客户端 A 客户端 B Redis 执行批次
阶段:普通执行

客户端 A

CONN-A
事务状态:未开始

    Redis 单线程执行器

    可接受其他客户端命令
    A 的事务队列0 条
    A 执行 MULTI 后,后续命令才会进入这里
    B 的命令只能等待

    客户端 B

    CONN-B
    连接状态:可立即执行

      共享时间线

      越靠下越晚发生

        命令卡支持拖动排序和跨客户端转移。键盘用户可使用每个客户端的执行按钮按队首顺序执行。