鹧鸪哨网站1v1深度开发,宁阳县住房和城乡建设局网站,网站 源码 php,美工宝盒网站主从模式介绍Redis虽然读取写入的速度都特别快#xff0c;但是也会产生读压力特别大的情况。为了分担读压力#xff0c;Redis支持主从复制#xff0c;Redis的主从结构可以采用一主多从或者级联结构#xff0c;Redis主从复制可以根据是否是全量分为全量同步和增量同步。下图…主从模式介绍Redis虽然读取写入的速度都特别快但是也会产生读压力特别大的情况。为了分担读压力Redis支持主从复制Redis的主从结构可以采用一主多从或者级联结构Redis主从复制可以根据是否是全量分为全量同步和增量同步。下图为级联结构。主从同步过程Redis全量复制一般发生在Slave初始化阶段这时Slave需要将Master上的所有数据都复制一份。具体步骤如下- 从服务器连接主服务器发送SYNC命令- 主服务器接收到SYNC命名后开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令- 主服务器BGSAVE执行完后向所有从服务器发送快照文件并在发送期间继续记录被执行的写命令- 从服务器收到快照文件后丢弃所有旧数据载入收到的快照- 主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命令- 从服务器完成对快照的载入开始接收命令请求并执行来自主服务器缓冲区的写命令主从模式搭建本例采用单例的1主2从的搭建方式。服务类型角色IP地址端口Redismaster127.0.0.117007Redisslave127.0.0.117008Redisslave127.0.0.1170091、首先准备一个redis实例参考【Redis】安装及简单使用2、准备一份主配置文件端口是170071 # 包含文件(redis-base.conf文件从redis安装目录中拷贝的)2 include /data/soft/redis-sentinel/redis-base.conf34 # 将redis-base.conf文件中bind注释需要在外网访问将protected-model改为no5 protected-mode no67 # 端口8 port 17007910 # 后台运行11 daemonize yes1213 # pid文件14 pidfile redis_17007.pid1516 # 日志文件17 logfile /data/log/redis-sentinel-log/redis-17007-log/redis-17007.log1819 # 主认证密码20 masterauth 1234562122 # 认证密码23 requirepass 1234562425 # 最大内存10M一般为机器内存的3/426 maxmemory 10mb2728 # 内存达到最大时策略可选择其他策略29 maxmemory-policy volatile-lru3031 # 目录32 dir /data/soft/redis-sentinel/redis-17007/3334 # 快照文件35 dbfilename dump-17007.rdb3、准备一份从配置文件端口是1700817009在主配置文件的基础上修改相应配置并加上以下2行1 # 从节点要跟随的主节点2 slaveof 192.168.0.3 1700734 # 主节点认证密码如果设置了密码就要设置5 masterauth 1234564、目录结构如图5、先启动主节点然后启动从节点主节点启动命令redis-5.0.5/src/redis-server redis-17007/redis-17007.conf从节点启动命令redis-5.0.5/src/redis-server redis-17008/redis-17008.conf6、redis客户端链接主节点查看信息命令redis-5.0.5/src/redis-cli -c -h 192.168.0.3 -p 17007 -a 123456主节点信息1 192.168.0.3:17007 INFO Replication2 # Replication3 role:master4 connected_slaves:25 slave0:ip192.168.0.3,port17008,stateonline,offset1373,lag06 slave1:ip192.168.0.3,port17009,stateonline,offset1373,lag17 master_replid:535c43ecbf009f8eae1930d52c2fc6149432b5ee8 master_replid2:00000000000000000000000000000000000000009 master_repl_offset:137310 second_repl_offset:-111 repl_backlog_active:112 repl_backlog_size:104857613 repl_backlog_first_byte_offset:114 repl_backlog_histlen:1373从节点信息1 192.168.0.3:17008 INFO Replication2 # Replication3 role:slave4 master_host:192.168.0.35 master_port:170076 master_link_status:up7 master_last_io_seconds_ago:58 master_sync_in_progress:09 slave_repl_offset:126110 slave_priority:10011 slave_read_only:112 connected_slaves:013 master_replid:535c43ecbf009f8eae1930d52c2fc6149432b5ee14 master_replid2:000000000000000000000000000000000000000015 master_repl_offset:126116 second_repl_offset:-117 repl_backlog_active:118 repl_backlog_size:104857619 repl_backlog_first_byte_offset:120 repl_backlog_histlen:12617、测试在主节点存入缓存在从节点取出缓存1 192.168.0.3:17007 set foo bar2 OK3 192.168.0.3:17007 get foo4 bar5 192.168.0.3:17008 get foo6 bar7 192.168.0.3:17009 get foo8 bar