1、redis备份
* redis备份
1、利用redis-cli 登录redis
2、执行 SAVE命令 #会阻断redis主进程,导致客户端法连接redis
3、config get dir命令可查看备份文件的目录
4、也可使用bgsave后台备份,不会阻断主进程
#恢复
1、将备份文件放置 config get dir 获取的目录下
2、重启redis 服务
* 数据迁移工具 redis-migrate-tool
2、redis集群原理,分片
redis原理:redis 3.0版本之前是不支持集群的,官方推荐最大的节点数量为1000,至少需要3(Master)+3(Slave)才能建立集群,是无中心的分布式存储架构,可以在多个节点之间进行数据共享,解决了Redis高可用、可扩展等问题。集群可以将数据自动切分(split)到多个节点,当集群中的某一个节点故障时,redis还可以继续处理客户端的请求。
支撑n个redis master node,每个master node 都可以挂载多个slave node
读写分离的架构,对于每个master来说,写就写到master,然后读就从mater对应的slave去读
高可用,因为每个master都有slave节点,那么如果master挂掉了,redis cluster这套机制,就会将某个slave切换成master
我们只要基于redis cluster 去搭建redis集群即可,不需要手工搭建replication复制+主从架构+读写分离+哨兵集群+高可用
自动将数据进行分片,每个master上放一部分数据,提供内置的高可用支持,部分master不可用时,还是可以继续工作。
redis分片:就是将数据拆分到多个 Redis 实例的过程,这样每个实例将只包含所有键的子集。当数据量大的时候,把数据分散存入多个数据库中,减少单节点的连接压力,实现海量数据存储。
分片部署方式一般有三种:
(1)在客户端做分片;这种方式在客户端确定要连接的redis实例,然后直接访问相应的redis实例
(2)在代理中做分片;这种方式中,客户端并不直接访问redis实例,它也不知道自己要访问的具体是哪个redis实例,而是由代理转发请求和结果;其工作过程为:客户端先将请求发送给代理,代理通过分片算法确定要访问的是哪个redis实例,然后将请求发送给相应的redis实例,redis实例将结果返回给代理,代理最后将结果返回给客户端
(3)在redis服务器端做分片;这种方式被称为“查询路由”,在这种方式中客户端随机选择一个redis实例发送请求,如果所请求的内容不再当前redis实例中它会负责将请求转交给正确的redis实例,也有的实现中,redis实例不会转发请求,而是将正确redis的信息发给客户端,由客户端再去向正确的redis实例发送请求。
https://www.cnblogs.com/niyueling/p/11655787.html
redis用在了哪些环境:
java、php环境用到了redis,主要缓存有登录用户信息数据、设备详情数据、会员签到数据等
3、
4、
5、
6、
7、
8、
9、