Redis原理主从配置解析
2013-03-29 18:19
417 查看
一 安装略过
二 redis特点
三 工作原理
四 主从配置 只需要在slave redis.conf配置文件中写上master的ip和redis端口即可
五 启动redis
六 redis命令解析
七 优化阶段:
八 redis配置文件解析: vim redis.conf
本文出自 “柯小某” 博客,请务必保留此出处http://kexl908.blog.51cto.com/605006/1166827
二 redis特点
1). 同一个Master可以同步多个Slaves。 2). Slave同样可以接受其它Slaves的连接和同步请求,这样可以有效的分载Master的同步压力。因此我们可以将Redis的Replication架构视为图结构。 3). Master Server是以非阻塞的方式为Slaves提供服务。所以在Master-Slave同步期间,客户端仍然可以提交查询或修改请求。 4). Slave Server同样是以非阻塞的方式完成数据同步。在同步期间,如果有客户端提交查询请求,Redis则返回同步之前的数据。 5). 为了分载Master的读操作压力,Slave服务器可以为客户端提供只读操作的服务,写服务仍然必须由Master来完成。即便如此,系统的伸缩性还是得到了很大的提高。 6). Master可以将数据保存操作交给Slaves完成,从而避免了在Master中要有独立的进程来完成此操作。
三 工作原理
在Slave启动并连接到Master之后,它将主动发送一个SYNC命令。此后Master将启动后台存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕后,Master将传送整个数据库文件到Slave,以完成一次完全同步。而Slave服务器在接收到数据库文件数据之后将其存盘并加载到内存中。此后,Master继续将所有已经收集到的修改命令,和新的修改命令依次传送给Slaves,Slave将在本次执行这些数据修改命令,从而达到最终的数据同步。 如果Master和Slave之间的链接出现断连现象,Slave可以自动重连Master,但是在连接成功之后,一次完全同步将被自动执行。
四 主从配置 只需要在slave redis.conf配置文件中写上master的ip和redis端口即可
# slaveof <masterip> <masterport> 改为 slaveof 127.0.0.1 6379
五 启动redis
/usr/local/redis/redis.server /usr/local/redis/etc/redis.conf 进入master进行操作 redis-cli -p 6379 ###进入master进行操作
六 redis命令解析
redis-server:Redis服务器的daemon启动程序 redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作 redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能 redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况
七 优化阶段:
/etc/sysctl.conf 添加 vm.overcommit_memory=1 刷新配置使之生效 sysctl vm.overcommit_memory=1 补充介绍: **如果内存情况比较紧张的话,需要设定内核参数:echo 1 > /proc/sys/vm/overcommit_memory 内核参数说明如下: overcommit_memory文件指定了内核针对内存分配的策略,其值可以是0、1、2。 0, 表示内核将检查 是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申 请失败,并把错误返回给应用进程。 1,表示内核允许分配所有的物理内存,而不管当前的内存状态如何。 2, 表示内核允许分配超过所有物理内存和交换空间总和的内存
八 redis配置文件解析: vim redis.conf
daemonize yes pidfile /usr/local/redis/var/redis.pid port 6379 timeout 300 loglevel debug logfile /usr/local/redis/var/redis.log databases 16 save 900 1 save 300 10 save 60 10000 rdbcompression yes dbfilename dump.rdb dir /usr/local/redis/var/ appendonly no appendfsync always glueoutputbuf yes shareobjects no shareobjectspoolsize 1024 说明: daemonize:是否以后台daemon方式运行 pidfile:pid文件位置 port:监听的端口号 timeout:请求超时时间 loglevel:log信息级别 logfile:log文件位置 databases:开启数据库的数量 save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。 rdbcompression:是否使用压缩 dbfilename:数据快照文件名(只是文件名,不包括目录) dir:数据快照的保存目录(这个是目录) appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。 appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
本文出自 “柯小某” 博客,请务必保留此出处http://kexl908.blog.51cto.com/605006/1166827
相关文章推荐
- Redis配置文件解析+单机多实例(主从)配置
- Redis (Replication) 主从原理和相关配置说明
- redis概述,特点,与Memached的不同,生产环境主从配置,redis配置文件解析
- redis源码分析(一)复习redis命令、持久化方案、主从同步原理、配置
- Redis配置文件解析+单机多实例(主从)配置
- DNS的解析原理,资源记录类型,主从区域名的配置,转发区域的配置,子域名授权等相关操作
- redis的主从架构的配置和哨兵模式原理和配置
- redis主从同步配置和原理
- 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制
- 解析配置文件 redis.conf(五)
- Redis系列-主从复制配置
- 数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)
- Redis主从复制和集群配置
- Redis系列(三)——主从介绍和配置
- redis安装配置,数据类型测试,连接方式测试和主从配置测试。
- 关于缓存Redis主从配置
- Redis安装与主从配置
- Redis持久化原理及配置详解(RDB方式和AOF方式)
- MySQL 主从复制的原理和配置
- 全面解析SpringBoot自动配置的实现原理