降低了客户端与服务端通信次数,效仿redis对命令的存储,客户端先将命令存储,最后打包一堆命令一起发到redis
执行pipe.execute(),才会把命令一起打包给redis
非事务测试: 流水线 VS 无流水线
redis存储不耗时,主要是网络上无效的耗时
是否开启事务: transaction=true
乐观锁,上锁后,其他人可以修改,如果其他人没有修改,则事务成功,如果其他人修改,则事务不成功
mysql一般为悲观锁,一旦锁住,其他人就无法修改
应用:商品秒杀可用乐观锁
unwatch
进行解锁
注意:每次提交执行exec后都会自动释放锁,不管是否成功
只有watch命令,立马发送到redis!!!!!!
其他命令再execute时才发送