redis简单事务
使用命令multi打开事务,这时设置的数据都会放入队列里保存,最后使用exec执行,依次存入redis中,使用discard命令取消事务
redis发布订阅
redis提供简单的发布订阅功能 使用subscribe[频道] 进行订阅监听 使用publish[频道][内容]进行发布消息广播
redis主从复制
一个master可以拥有多个slave,多个slave可以连接一个master外,还可以连接其他的slave。主从复制不会阻塞master。在同步数据时,master可以继续工作处理client的请求。提供系统的伸缩性。
主从复制的过程: 1.slave雨master建立连接,发送psync命令(Redis2.8以前是sync命令。2.master会开启一个后台进程,将数据库快照保存到文件中,同时master主进程会开始收集新的写命令并缓存。3.后台完成保存后,就将文件发送给slave。4.slave将此文件保存到硬盘上。
主从复制配置: 从节点开启主从复制,有3种方式:
(1)配置文件
在从服务器的配置文件中加入:
slaveof <masterip> <masterport> 
复制代码
例如 slaveof <192.168.1.1> <6379> (2)启动命令
redis-server启动命令后加入 --
slaveof <masterip> <masterport>
复制代码
(3)客户端命令
Redis服务器启动后,直接通过客户端执行命令:
slaveof <masterip> <masterport>
复制代码
则该Redis实例成为从节点。
可以通过
slaveof no one
复制代码
断开。需要注意的是,从节点断开复制后,不会删除已有的数据,只是不再接受主节点新的数据变化。 详情参考mp.weixin.qq.com/s/2DlBxBhfK…
redis集群
集群的作用,可以归纳为两点:
1、数据分区:数据分区(或称数据分片)是集群最核心的功能。
集群将数据分散到多个节点,一方面突破了Redis单机内存大小的限制,存储容量大大增加;另一方面每个主节点都可以对外提供读服务和写服务,大大提高了集群的响应能力。
2、高可用:集群支持主从复制和主节点的自动故障转移(与哨兵类似);当任一节点发生故障时,集群仍然可以对外提供服务。
详见 www.cnblogs.com/kismetv/p/9…
基于redis的分布式锁
锁具有排他性,才能保证同一时间只有一个线程操作数据,保证一致性。还需具有高性能(加,解锁的效率),可以使用非阻塞锁与阻塞锁,不能出现死锁,可用性(不能出现节点down后,加锁不成功)。