0

我正在开发一个系统,其中有多个程序(每个程序都在自己的 JVM 中)正在执行数据库操作。

一个组件——比如 A——更新 MySQL 中的表条目,将状态从“开始”更新为“完成”,另一个守护进程——比如 B——检查表中所有标记为“完成”的条目并执行一些操作他们。

问题是当 A 在某个时间 t1 更新条目时,B 只能在以下任一情况下看到这些更改: 1. 当运行 B 的 jvm 重新启动时。2. 当 B 中检查更改的线程停止一两个小时时。(基本上,检查处于“已完成”状态的条目的线程重复查询 MySQL 表并获取陈旧数据,但在窗口期间停止进行任何查询。当窗口完成时,它开始再次进行相同的查询并获取更新的数据,但在时间 t1 和窗口开始之间,它总是得到陈旧的数据)

4

0 回答 0