redis分布式

一、为什么需要集群

 1、性能考虑

一台redisQPS为10万(每秒钟可以处理的请求数),在并发量非常高的时候,还是有影响。

2、扩展考虑

水平扩容,redis都是存储在内存里,当数据量非常大的时候会受到硬件的限制。

3、可用性、安全性考虑

防止单点故障。

二、配置主从复制


    1、建立复制

(1) 复制实例分为Master和slave,默认情况下,参与复制的Redis实例都是主节点,每个从节点只能有一个主节点,而主节点可以同时具有多个从节点,同时复制的数据流是单向的,只能由主节点复制到从节点。配置复制的方式:
            1)在配置文件加入slaveof{masterHost}{masterPort}
            2)在Redis-server启动时候加入 --slaveof{masterHost}{masterPort}
            3)直接使用命令slaveof{masterHost}{masterPort}
        (2)查看当前redis的信息:info replication


    2、断开复制

slaveof no one :断开与主节点的联系,从节点晋升为主节点。
        断开复制从节点数据不会抛弃原因的数据,但是无法获取主节点上的新数据。

3、切主流程

命令操作:直接在从节点使用slaveof 新的ip 新的端口
        断开与旧主节点的复制关系
        与新主节点建立复制关系
        删除从节点当前所在所有数据
        对新主节点进行复制
        注意:且住后从节点会清空之前所有的数据,因此线上操作要严格确认

4、安全性

 尽量选择安全可信任的网络环境
        对于重要数据,可以配置requirepass进行验证(或者堡垒机)

5、只读模式

默认情况下,从节点使用slave-read-only=yes 配置为只读模式,在线上环境尽量不要对从节点进行写数据操作避免造成数据不一致。写一般在从节点进行。
   

6、传输延迟

主从点部署在不同机器上,因此在复制的时候网络延迟是最需要考虑的问题:repl-disable-tcp-nodelay用户控制TCP_NODELAY,默认是关闭的
        当关闭时,主节点产生的命令数据无论大小都会及时地发送给从节点,优势是延迟小,但是会增加网络带宽消耗,建议在复制实例都在同一个局域网环境内使用
        当开启时,主节点会合并比较小的TCP数据包从而节

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值