-
高速缓存介绍
利用内存保存数据,读写速度远超硬盘
可以减少I/O操作,降低I/O压力
发红包、抢红包的数据可以存在高速缓存中,加快处理速度,不需要经过数据库
淘宝首页一些优惠活动商品等热数据可以存在高速缓存中,而基于大数据的推荐产品从数据库中读取
-
Redis介绍
Redis是Wmware开发的开源免费的KV型NoSQL缓存产品
Redis具有很好的性能,最多可以提供10万次每秒的读写
目前新浪微博团队组建了世界上最大规模的Redis集群
Redis目前的集群方案分为以下几种:
- RedisCluster:官方推荐,没有中心节点
- Codis:中间件产品,存在中心节点
- Twemproxy:中间件产品,存在中心节点
-
RedisCluster
没有中心节点,客户端与Redis节点直连,不需要中间代理层
数据可以被分片存储,每个节点保存一部分数据,互不相同,某个节点挂掉可能丢失数据,所以要为每个节点设置冗余节点
管理方便,后续可以自行添加或删除节点
-
Redis主存同步
Redis集群中的数据库复制通过主从同步来实现的。
主节点把数据分发给从节点。
主存同步的好处就在于高可用,Redis节点有冗余设计
-
Redis集群高可用
Redis集群中应该包含奇数个Master,至少应该有3个Master。
Redis和PXC集群都有选举机制,如果超过一半的节点挂掉,那么剩下的节点没有超过一半,是无法选举组成一个新的集群的。
连接Redis集群的任何一个节点都能正确写入数据,Redis节点能计算数据应该保存到哪个节点,将数据切分保存到相应的其他节点上。
Redis节点不配置负载均衡,因为后端项目使用Spring,Spring帮我们实现了负载均衡。(或者使用Nginx代理也行)