首页 > 业务处理中数据库状态更新如何保证实时?

业务处理中数据库状态更新如何保证实时?

java项目业务中经常会出现在service中update更新数据库状态然后用另一个线程去处理复杂业务,但是在另外的线程中取出当前对象的时候会出现update的状态还没更新的情况;
另外一种情况是在service中更新状态,然后每次进入时会判断状态值来决定是否处理业务,但是如果两次相同的业务发起时间过短的话就会出现第一次还没更新好状态第二次就已经执行了,导致状态值无法获取最新的。
我们的事务都是在service上的,不知道有什么办法可以让数据库状态先更新,每次都能取到最新的状态。


更新的时候建议你用一些小手段将正在被更新的数据锁定, 不允许读取。等更新过后再发消息让其他线程进行读取。


事务隔离级别,设置成repectable即可

【热门文章】
【热门文章】