多台机器并发插入数据的同步控制问题

来源:百度知道 编辑:UC知道 时间:2024/05/25 20:24:46
假设我有两台机器处理同样的逻辑
此逻辑从数据库中按某字段field(此字段不会重复)取记录 如果取不到则新插入一条数据 需要保证数据库中每一个field的值只有一条记录 并且不能把field设成惟一key 而必须用程序来判断

这时候的问题是两台机器的并发可能导致同时插入两条记录 同步锁控制对于两台机器也是没用的

有什么比较好的解决方法么
1 锁表是不可能的 因为访问量非常大……单锁一条对insert是无意义的 使用一个表来存储锁信息也是不可行的 只是把并发insert挡在了同步锁的那个表里
2 数据库服务器我摸不到……

最后我还是用了惟一key来控制重复条目插入……悲剧

你安装在两台机器的软件是无法做到的,提供两个方法:
1.在你数据库中设置锁
2.在数据库服务器上写个程序,功能专门接收那两台机器发送来的数据,接收到后,同步插入数据库,这样能保证同步