今天忽然想到一个问题
对于高并发条件下,后台对数据的更新和实例化是怎么进行的?
1、直接插入数据库,然后更新缓存?
这样这个更新操作将会有IO阻塞风险吧、
2、直接更新缓存,然后使用消息队列更新数据库?
只能延缓IO阻塞,并不能避免
3、直接更新缓存,定时批量更新数据库
这样IO的问题是解决了,但是数据在缓存里感觉很慌。
也没实践过真正的高并发系统,这种情况怎么解决?
----------补充----------
总结一下
就是已知直接插入和更新数据库将面临IO阻塞的风险,那么将数据最终实例化到数据库的过程是怎么样的。
中间池啊,cache啊,redis、反正就是这个意思;
如果池都阻塞了,还是+处理单元吧;这就像樱桃小口小瘦子,吃一锅饭,用多大碗都不行,那就找十个樱桃小口小瘦子或者找个嘴敞的大胖子;
更新: