接着吧redis一些话题讲完。发现昨天漏了一个命令
1、zrangebyscore
zrangebyscore key min max winthscore limit offer end
获取有序集合key中,所有score值介于指定区间 的,按照从小到大排序
其中 min man 可以使用 -inf +inf 表示无穷小和无穷大
limit 类似于sql语句中的指定从那几个元素
2、zcount
【例】 zcount ulist 2000 5500
返回值:integer 类型数据
返回集合中score值介于2000 5500之间的所有成员的数量
redis事务
Redis本身是一种Kv结构的cache菲关系型数据库存储结构。 而Nosql 本身是不支持事务机制的,没有事务ACID的特性。而现在为什么由谈Redis的事务呢?
在事务运行期间,redis 的命令可能会执行失败,但是redis会继续向下执行其他命令,最后提交事务,而不会执行回滚事务,但是如果出现语法错误的情况,这时事务会被打断,返回nil
Redis事务的命令
1、multi
开启事务,事务内部的多条命令会按先后顺序依次进入一个队列,
2、 exec
执行所有事务块内部的命令
如果出现语法错误,事务会被打断,返回nil
3.discard
取消事务,放弃执行事务块内部的命令
使用watch 监控一个key 当我们开启事务机制后,由于这个key已经被其它命令所修改,所以watch会提示任务失败,此时执行exec命令后 , 则出现语法错误,返回nil