Redis的replication在从站连接到主站时开始。但在初始复制结束后,奴隶如何不断与主人保持同步?我找不到描述这种机制的文档的任何部分。特别是,我如何衡量主从之间的滞后?在复制结束后,Redis从服务器如何保持同步?
1
A
回答
2
初始复制后,主站将更改写入内部缓冲区,并将它们发送到从站。来自replication页面:
然后主站将向从站发送所有缓冲的命令。这是作为命令流完成的 ,并且与Redis 协议本身的格式相同。
您可以在GitHub上查看full replication source code(这指向Redis版本3.0)以了解基本细节。
就延迟而言,有一个page dedicated to latency troubleshooting和one dedicated to latency monitoring。这两页包含大量的背景信息和技术来排除/测量Redis延迟。一个简单的起点是从从站到主站和/或主从站运行redis-cli --latency -h 'host' -p 'port'
。
1
我相信你可以通过在从机上发行INFO replication
找到,并检查slave_repl_offset
的值。
相关问题
- 1. 如何保持运行redis服务器
- 2. MySQL复制如何保持同步?
- 3. zookeeper vs redis服务器同步
- 4. 如何让GCM与应用和服务器保持同步?
- 5. 即使在服务器停止后,redis如何保持缓存数据
- 6. 保持Subrepos在中央服务器上同步
- 7. 如何将Redis主服务器同步到另一个独立的Redis实例?
- 8. 保持Redis实例的副本保持同步?
- 9. 如何保持不同步
- 10. 保持远程服务器与Git仓库同步
- 11. 保持OpenLDAP和活动目录同步(Windows服务器08R2)
- 12. GWT保持同步客户端和服务器型号
- 13. 保持Android客户端与服务器同步
- 14. Ruby面向服务的体系结构 - 如何确保同步?
- 15. 如何从后台服务获取结果,但仍然保持运行在android
- 16. 如何与服务器同步以使中继商店保持最新状态?
- 17. 如何让多个读/写数据库服务器保持同步?
- 18. 如何让Subversion和远程服务器(通过FTP)保持同步?
- 19. Angular:如何保持$ scope属性与控制器函数同步?
- 20. 如何让MPMoviePlayerController在电影结束后保持打开状态?
- 21. 保持表在同一台服务器上的数据库之间同步
- 22. 从服务器端结束WCF会话?
- 23. 如何确保MySQL复制SLAVE与复制MASTER完全同步?
- 24. 同步架构服务器到服务器同步
- 25. 强制停止后如何保持服务运行?
- 26. 如何同步与服务器时间
- 27. Redis是否在复制中将其写入主服务器?
- 28. 如何将服务器保存的数据同步到couchbaselite中
- 29. 使控制器方法异步或保持同步?
- 30. 如何保持后台服务始终在后台
这是不正确的。 slave_repl_offset不是主机的偏移量,而是从机的距离。计算滞后的唯一方法是从master_repl_offset中减去master_repl_offset(不是从机) 可以在这里找到一个解释:https://github.com/antirez/redis/issues/2375 – psamaan 2016-01-30 00:48:26