采用多线程对数据库读写引发冲突
蜜莉恩 2013-08-08 01:51:20 数据库里存了几百台系统信息,要定时从数据库查询系统列表,连接到每台系统,采集一些数据,然后把采集到的数据再存到数据库中,便于日后查询。
因为系统数量庞大,所以采用的是多线程操作,这样可以提高采集数据的速度。但问题就在于收集到数据以后插入数据库时发生冲突,因为常常多个进程都想要把自己的数据插入,而且是插入同一个表,但只有一个进程能真正取得写入权(个人猜测是因为insert的时候数据库自动把表给lock了?),因此导致其他进程的数据没法写入而丢失。
有没有办法解决这一问题?