mysql - 如何避免由于滞后 b/w 主/从而导致重复?
问题描述
我们有一个主数据库和从数据库。主数据库用于服务实时流量(读/写),从数据库用于服务离线/后台进程。通常,黑白主机和从机的延迟时间为 15 到 20 分钟。
每分钟都会运行一个进程检查slave上是否不存在某些数据(例如base_condition),更新master中的base_condition并发送电子邮件。但是由于 b/w master 和 slave 的滞后,这个过程会再次发送电子邮件,因为它的基本条件由于滞后而没有在 slave 上更新。我不确定什么是自下而上的最佳解决方案。
我能想到的一些解决方案
- 仅使用主机而不是从机
- 将更新的基本条件也保留为从站上的临时数据并检查它。
对我来说,第二个看起来像是 hack 或 tem 解决方案。我会去第一个,但它违反了我应该将 master 用于实时流量的规则。因此,它会添加更多这样的流程。有没有像这样更好的解决方案?
解决方案
推荐阅读
- android - 文件未在 SDCARD 中创建
- c++ - 使用带有嵌套循环的 OpenMP 缩减子句
- recursion - 有没有不支持递归的现代语言?
- google-api - 此应用程序未经 Google 验证,即使已验证
- c# - 制作一个全局变量 int
- javascript - JavaScript - 循环函数
- outlook - Outlook 预选发件人
- ruby-on-rails - Rails 使用来自不同 activerecord 模型的列作为外键
- java - lambda 表达式处的 NULLPOINTER
- triggers - 如果联系人 (PA) 的先前所有者不是同一用户,则在更改帐户所有者时 Salesforce 触发联系人 (PA) 所有者更改失败