理解并从头搭建redis集群
部分开发人员工作当中只是在应用中使用redis,比如用来做数据结果的缓存。而且现在有很多不错的redis客户端工具(redisson),基本上可以不用关注redis命令就可以完成相当部分的功能。所以可能会对如下这些问题关注点不够:
如何容灾?即某个redis节点出了问题如何保证服务的高可用性
如何横向扩容?当数据量特别大时,如何解决单个redis的性能问题
集群至少需要几台机器?或者几个redis节点
集群搭建都利用什么技术,哪些工具?
如何容灾?
redis提供了主从热备机制,主服务器的数据同步到从服务器,通过哨兵实时监控主服务器状态并负责选举主服务器。当发现主服务器异常时根据一定的算法重新选举主服务器并将问题服务器从可用列表中去除,最后通知客户端。主从是一对多的树型结构,如下图:

哨兵
哨兵是sentinel的中文名称,是redis出的一个高可用架构的工具,自身是一个独立的进程,可以同时监控一个以上的redis集群。

