Redis的master/slave复制: Redis的master/slave数据复制方式可以是一主一从或者是一主多从的方式,Redis在master是非阻塞模式,也就是说在slave执行数据同步的时候,master是可以接受客户端的请求的,并不影响同步数据的一致性,然而在slave端是阻塞模式的,slave在同步master数据时,并不能够响应客户端的查询 Redis的master/slave模式下,master提供数据读写服务,而slave只提供读服务 Redis的master/slave的配置方式是在slave主机的Redis目录下的redis.conf配置文件中添加: 例如:我们配置我们的slave为:redis-slave.conf |
daemonize yes
pidfile redis-slave.pid
port 6380
timeout 300
loglevel verbose
logfile stdout
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump-slave.rdb
dir /home/falcon/redis-2.0.0/
slaveof 127.0.0.1 6379
appendonly no
appendfsync everysec
vm-enabled no
vm-swap-file logs/redis-slave.swap
vm-max-memory 0
vm-page-size 32
vm-pages 134217728
vm-max-threads 4
glueoutputbuf yes
hash-max-zipmap-entries 64
hash-max-zipmap-value 512
activerehashing yes
[falcon@www.fwphp.cn
~/redis-2.0.0]$ ./redis-server redis-slave.conf
查看状态信息
[falcon@www.fwphp.cn ~/redis-2.0.0]$ ./redis-cli -p 6380 info
redis_version:1.3.17
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:32
multiplexing_api:epoll
process_id:10772
uptime_in_seconds:249
uptime_in_days:0
connected_clients:2
connected_slaves:0
blocked_clients:0
used_memory:1756868
used_memory_human:1.68M
changes_since_last_save:0
bgsave_in_progress:0
last_save_time:1281654285
bgrewriteaof_in_progress:0
total_connections_received:13
total_commands_processed:9
expired_keys:0
hash_max_zipmap_entries:64
hash_max_zipmap_value:512
pubsub_channels:0
pubsub_patterns:0
vm_enabled:0
role:slave
master_host:127.0.0.1
master_port:6379
master_link_status:up
master_last_io_seconds_ago:248
db0:keys=23,expires=0
[falcon@www.fwphp.cn ~/redis-2.0.0]$ ./redis-cli -p 6379 info
redis_version:1.3.17
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:32
multiplexing_api:epoll
process_id:7663
uptime_in_seconds:16787
uptime_in_days:0
connected_clients:1
connected_slaves:1
blocked_clients:0
used_memory:1757232
used_memory_human:1.68M
changes_since_last_save:0
bgsave_in_progress:0
last_save_time:1281654286
bgrewriteaof_in_progress:0
total_connections_received:835
total_commands_processed:55953
expired_keys:1
hash_max_zipmap_entries:64
hash_max_zipmap_value:512
pubsub_channels:0
pubsub_patterns:0
vm_enabled:0
role:master
db0:keys=23,expires=0
扩展思维:
Redis可以做一主一从,也可以做一主多从,更可以做一主一从,在从下面挂从,大家可以根据需求做这样的试验