redis事物transaction

  1. MULTI

    用于标记事务块的开始。Redis会将后续的命令逐个放入队列中,而后才能使用EXEC命令原子化地执行这个命令序列。数组

这个命令的运行格式以下所示:ide

MULTI
这个命令的返回值是一个简单的字符串,老是OK。code

  1. EXEC

    在一个事务中执行全部先前放入队列的命令,而后恢复正常的链接状态。
    当使用WATCH命令时,只有当受监控的键没有被修改时,EXEC命令才会执行事务中的命令,这种方式利用了检查再设置(CAS)的机制。队列

这个命令的运行格式以下所示:事务

EXEC
这个命令的返回值是一个数组,其中的每一个元素分别是原子化事务中的每一个命令的返回值。 当使用WATCH命令时,若是事务执行停止,那么EXEC命令就会返回一个Null值。字符串

127.0.0.1:6380> multi
OK
127.0.0.1:6380> xadd myStreamKey * name Jack age 29
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 28
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 27
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 26
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 25
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 24
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 23
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 22
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 21
QUEUED
127.0.0.1:6380> xadd myStreamKey * name Jack age 20
QUEUED
127.0.0.1:6380> exec
 1) "1555926229541-0"
 2) "1555926229541-1"
 3) "1555926229541-2"
 4) "1555926229541-3"
 5) "1555926229541-4"
 6) "1555926229541-5"
 7) "1555926229541-6"
 8) "1555926229541-7"
 9) "1555926229541-8"
10) "1555926229541-9"
相关文章
相关标签/搜索