三、redis进阶

阅读文档

1.管道

  yum install nc 安装netcat

  建立socket连接 管道,直接给redis发值  nc localhost 6379  set k1 test (ctrl+c结束)然后在客户端查询 

   

2.发布订阅:help @pubsub

  监听之后才能接收到

  redis-cli : subscribe channel   建立监听

  另一个redis-cli:publish channle 发送消息

 

3.事务:help @transactions 

  redis事务并不完善,追求速度。

  MULTI 开启了一个事务之后

  EXEC:执行事务中所有在排队等待的指令并将链接状态恢复到正

  DISCARD: 取消事务队列

  WATCH:标记所有指定的key 被监视起来,在事务中有条件的执行(乐观锁)。

redis 单进程 :谁的exec先到达,谁的整体先执行常 

watch捕获到k1发生变化的话,即2先执行,则后续1的操作整体取消

 4.布隆过滤器 RedisBloom   解决缓存穿透问题

  wget https://github.com/RedisBloom/RedisBloom/archive/master.zip

  yum install unzip | unzip master.zip |  cd RedisBloom-mater : make | cp redisbloom.so /opt/helq3/redis5

  redis-server --loadmodule /opt/helq3/redis5/redisbloom.so 启动服务 增加BF. 一些命令

  

  

   BF 解决缓存穿透 : 缓存查不到,然后查数据库

  

  

   

5.过期

 set k1 aa  ex 10

 ttl k1 --查看还有多久过期

 set k2 aaa    
 expire k2 10

   expireat k2 20

 

原文地址:https://www.cnblogs.com/helq/p/13457825.html