Redis 事务是一组命令的集合。事务同意多个命令在同一上下文中执行,保证事务内的命令按预期执行,中间不会插入其他命令。
Redis 事务主要通过 MULTI
、EXEC
、DISCARD
和 WATCH
命令来实现。
MULTI
命令用于开启一个事务。它的返回值总是OK
。EXEC
命令用于执行事务中的所有命令。DISCARD
命令用于取消事务,放弃执行事务中的所有命令。WATCH
命令用于监视一个或多个键,如果在事务执行之前键的值发生变化,则取消事务的执行。
以下是一个使用 Redis 事务的 Python 示例:
import redis
# 连接到本地Redis服务器
r = redis.Redis(host='localhost', port=6379, db=0)
# 开启Redis事务
pipeline = r.pipeline()
# 将要在事务中执行的命令加入到事务中
pipeline.multi()
pipeline.set('key1', 'value1')
pipeline.set('key2', 'value2')
pipeline.set('key3', 'value3')
# 执行事务
pipeline.exec()
# 获取设置的值进行验证
print(r.get('key1')) # 输出:value1
print(r.get('key2')) # 输出:value2
print(r.get('key3')) # 输出:value3
在这个例子中,我们首先通过 pipeline
对象开启了一个事务,然后使用 multi
方法开始事务,并将三个 set
命令加入到事务中。最后,我们通过 exec
方法执行了这个事务。
注意:在实际使用中,应该确保 Redis 服务器的正常运行,并处理可能出现的异常。