Redis事务初识

一、Redis的基础事务和回滚机制
1、跟大部分NoSQL不同,Redis存在事务,某些场合使用Redis代替数据库,保证了数据的一致性,又大幅度提高了读写响应速度;
2、Redis事务命令:
nulti 开启事务
watch key1[key2] 监听某些键(被监听的键在植物执行前被修改,事务会被回滚)
unwatch key1[key2] 取消监听某些键
exec 执行事务(如果被监听的键没有被修改则执行,否则回滚)
discard 回滚事务
3、事务机制:
nulti命令开启事务,exec命令执行事务。multi和exec之间采取进入队列的方式,直至exec命令的出现,才会一次性发送队列里的命令去执行,而在执行这些命令的时候其他客户端不能再插入任何命令。
4、回滚机制:特别注意命令格式错误和数据格式错误
命令格式不正确,产生错误,之前之后的命令都会被回滚;
命令格式正确,某条数据格式不正确时,某条数据产生错误,其余之前后的命令都被执行。
(之所以这样设计,是为了保证移动互联网的核心问题:性能!)
(因此,对于一些重要操作,必须在程序中检测数据的正确性,以保证事务的正确执行)
二、流水线
Redis的流水线是一种通信协议,不是为了解决Redis的性能,是解决网络延迟造成Redis的瓶颈。

你可能感兴趣的:(Redis事务初识)