DB数据存储
更新日期:
一般在项目中总是会遇到需要把数据储存到数据库的情况,下面就讨论下存储方案。
直接储存
最简单的当然是直接存储了,当数据变化的时候直接插入或更新数据库,但当数据量很大或者数据变化频率很快的时候数据库压力太大,不妥。
定时存储
当数据变化时并不立马更新数据库,而是先把数据存在内存里,打上标识,当到了一定的时间间隔之后再一起存储,这样数据库操作就不会太过频繁,但当该时间间隔内需要更新的条目太多的话也会造成数据库的阻塞。
定时加分时存储
大体就是设置个定时器五分钟做一次整体的数据库更新,到了更新点的时候检测需要更新的数量,如果更新量比较大,好比需要更新1000条数据,这时候就把定时器设置成5秒,然后每5秒更新100条数据,当50秒过后再把定时器设回五分钟,如此循环。
这样就保证了数据更新不至于太频繁的同时,也保证了同一时刻对数据库的操作数量很小。
分时存储
设置个5秒的定时器和一个multimap
总的来说,要采取哪种方案要根据实际项目需要来安排,一般来说后面两种比较好点,适应性比较强。
代码就不上了,有了思想代码写起来简单。