首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

两进程修改数据库,不同步有关问题的解决方法

2012-10-26 
两进程修改数据库,不同步问题的解决办法一个进程不断查询数据库,看某个字段时候已经被修改,如果修改则做下

两进程修改数据库,不同步问题的解决办法

一个进程不断查询数据库,看某个字段时候已经被修改,如果修改则做下一步工作;如果没有修改继续循环查询

另外一个进程由用户操作去更新数据库中的这个字段

?

问题是,在上面这样的场景中,查询数据库的进程根本看不到数据被修改

?

解决办法:

?

给第一个查询部分也加上事务管理的代码(一般情况下,对于修改,更新部分的代码才进行事务的管理,而这种查询代码都是直接查询的)

?

 自己没有试过,对这个很感兴趣。 不过我想如果自己写个类似于通知的东西应该更加简单,简洁一些。dao.getSession().close(); 

与事务无关,就算启用事务,对象还是在session缓存里面。

解决方式很多,比如清一级缓存,你选择了最差的一种方式。

再多说一句,查询怎么都不加事务?这毛病得改改。 18 楼 rain2005 2009-07-01   ray_linn 写道只能说这个设计太搓了,明知道有别的进程还需要修改数据库,还会用上hibernate。
为什么有别的进程还需要修改数据库就不能用hibernate,只要不启用二级缓存就OK。
19 楼 ray_linn 2009-07-01   rain2005 写道ray_linn 写道只能说这个设计太搓了,明知道有别的进程还需要修改数据库,还会用上hibernate。
为什么有别的进程还需要修改数据库就不能用hibernate,只要不启用二级缓存就OK。


无非以性能为代价呗。 20 楼 faylai 2009-07-01   这样的设计就有问题,本身轮询数据库就不是件好事。

热点排行