码迷,mamicode.com
首页 > 其他好文 > 详细

redis集群的一个简单总结

时间:2015-03-18 12:35:49      阅读:284      评论:0      收藏:0      [点我收藏+]

标签:

Redis

Redis 是什么

Redis是 remote dictionary server 的缩写,是一个key-value型的数据存储系统

Redis特性

丰富的数据类型和操作:string, list, hash, set, sorted set

数据持久化

主从复制

键过期

事务

键过期

惰性删除:每次读写操作时判定是否过期,过期就删除

定时删除:redis serverCron 程序删除过期键

定期清除:检查expires字典进行清除

 

主从 键过期:主服务器删除,会同步到从,从访问过期不会删除,只会返回key为空状态

主从服务器在保存rdb文件时会过滤过期键

从加载rdb文件时不会过滤过期键,主会

 

持久化

Rdb方式:将内存的数据以快照的方式写入磁盘。

父进程继续处理client请求,子进程负责将内存内容写入到临时文件,当子进程将快照写入临时文件完毕后,用临时文件替换原来的快照文件,然后子进程退出

优劣:性能高,数据占用磁盘较小;一旦崩溃,数据丢失率教大,数据量大重写时 i/o开销较大

 

Aof方式:每次写命令都会持久化所有写操作命令,重启时,通过重新执行这些命令还原数据。在数据还原时,只有和数据库无关的订阅等功能正常接收请求,其他的一律失败。

优缺点:性能相对较低,数据占用磁盘大;数据丢失较少,性能比较稳定。

 

Aof重写:随着运行时间的流逝, AOF 文件变得越来越大,通过重写节省空间

主进程fork出子进程,同时增加一个aof重写缓存,主进程处理命令请求,主进程将命令追加到现有的aof文;主进程将命令追加到aof重写缓存,子进程完成aof文件重写,通知主进程,主进程将aof重写缓存内容全部写入到新aof文件;主进程对新的aof文件进行重命名,覆盖老的aof文件

 

主从复制

主从复制就是把一台redis数据库中的数据同步到另一台redis数据库

一个master可以拥有多个slave,而一个slave又可以拥有多个slavemaster可以有多个slave

除了多个slave连到相同的master外,slave也可以连接其他slave形成图状结构

主从复制不会阻塞master。相反slave在初次同步数据时则会阻塞不能处理client的请求。

 

流程:左边slave,右边master

 技术分享

   

集群架构

 

Redis集群到底怎么做有很多方式,这里就简单介绍其中一种方式。

 

主从结构,主节点用于处理所有请求,从节点备份。脚本定时rdb备份。脚本监控节点状态,主从漂移切换。Zookeeper保存配置,客户端与zookeeper集群通信维护集群状态信息。Double扩展。

 


redis集群的一个简单总结

标签:

原文地址:http://my.oschina.net/hejiula/blog/388281

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!