摘要: 引言 单例模式比较常见的实现方法有懒汉模式,DCL模式公有静态成员等,从Java 1.5版本起,单元素枚举实现单例模式成为最佳的方法。 Java枚举 基本用法 枚举的用法比较多,本文主要旨在介绍利用枚举实现单例模式的原理,所以这里也主要介绍一些相关的基础内容。 首先,枚举类似类,一个枚举可以拥有成员 阅读全文
posted @ 2018-09-12 19:30 kaleidoscopic 阅读(5042) 评论(1) 推荐(3) 编辑
摘要: 1 哨兵的作用 哨兵是redis集群架构中非常重要的一个组件,主要功能如下: 2 哨兵的核心知识 3 sdown和odown 4 quorum和majority 5 为什么哨兵至少3个节点 哨兵集群必须部署2个以上节点。如果哨兵集群仅仅部署了个2个哨兵实例,那么它的majority就是2(2的maj 阅读全文
posted @ 2018-09-12 18:30 kaleidoscopic 阅读(9967) 评论(0) 推荐(2) 编辑
摘要: 导言 redis-cluster是近年来redis架构不断改进中的相对较好的redis高可用方案。本文涉及到近年来redis多实例架构的演变过程,包括普通主从架构(Master、slave可进行写读分离)、哨兵模式下的主从架构、redis-cluster高可用架构(redis官方默认cluster下 阅读全文
posted @ 2018-09-12 17:43 kaleidoscopic 阅读(4076) 评论(0) 推荐(1) 编辑
摘要: 尽管我们已经知道了主从复制能尽可能的确保数据不会因master node的节点挂掉而丢失,然而现实生活中,我们总不可能一直在看着master node的状态,在一旁等着它挂掉然后把它“提起来”。这时候,需要有个东西来替我们监督并且随时调整redis集群状况,这个东西就叫做哨兵(sential)。 哨 阅读全文
posted @ 2018-09-12 16:35 kaleidoscopic 阅读(2454) 评论(0) 推荐(0) 编辑
摘要: 一、Redis Cluster主要特性和设计 集群目标 1)高性能和线性扩展,最大可以支撑到1000个节点;Cluster架构中无Proxy层,Master与slave之间使用异步replication,且不存在操作的merge。(即操作不能跨多个nodes,不存在merge层) 2)一定程度上保证 阅读全文
posted @ 2018-09-12 15:42 kaleidoscopic 阅读(2950) 评论(1) 推荐(0) 编辑