redis - 在 Redis 中选举新的 master 之前数据会发生什么?
问题描述
在 redis 主从架构中,当一个主失败时,一个从被提升为主。由于只有master可以进行写操作,所以在slave提升为master的窗口期内数据会发生什么。我的系统是否仍然没有响应?
解决方案
定义“数据”:)
与主服务器的客户端连接将在其失败时关闭,因此您的系统将收到通知。因此,在故障之前未写入主服务器和副本的任何数据仍将驻留在您的应用程序/系统中。
一旦您的系统尝试使用副本,它将能够读取其中的数据,直到它在失败前同步。一旦副本升级为master,您的系统将能够继续写入数据。
请注意,Redis 的同步是异步的。这意味着从站可能落后于主站,因此在失败的情况下会丢失一些更新。有关确保一致性的更多信息,请参阅WAIT
命令。
推荐阅读
- docker - Docker pull - 从 Gitlab CI 构建并推送到 Heroku
- html - 为什么输入行为会这样工作?
- xamarin - Visual Studio Mac 2017 在构建时挂起
- date - 如何在 ArangoDB 中循环日期范围
- vb.net - 自动实现的属性会导致空引用,而完整的写入属性不会
- asp.net - 如何在具有相同主机和端口的 IIS 上添加多个 asp.net 应用程序/
- python - Python Pandas:当 df.columns = df.columns.droplevel() 时浮点值分解
- javascript - JS判断网页是否被手机打开
- reactjs - React、Redux、Api、Postman 编程中的重复声明“Main”
- java - 单独提供 HH:mm:ss 格式的时分秒