项目实战 (13)--- 内部并发多线程一致性处理
目录
背景
相关技术和问题
并行粒度与消耗资源
整合后的解决方案
极限思想与答案
代码设计思想
完整代码
日志分析
页面效果
背景
在 项目实战 (12)---外部并发一致性处理-CSDN博客 中我们处理了外部并发的一致性问题,主要是反馈在多用户搜索的过程中,解决出现的查询混乱问题,从本质上来说,如果你只是想想,问题可能就不应该出现,因为web socket 在进行 b/s 交互时,你稍微懂点原理,都应该明白通道是独立的,数据不应该发生混乱的现象。但是只有你深入理解,使用整个流程后,才会看到混乱问题的本质所在,并试图想各种方法进行修复。今天主要解决的是内部逻辑并发一致性的处理。为什么要强调内部并发一致性的处理,他主要发生在video 处理的后端。一方面,我们使用了缓存等技术去删除那些很久没有使用的缓存。另一方面,我们试图使用这些缓存来加速我们的搜索。内部并发一致性就显得比较重要了,虽然他不常发生,但是一定发生,后果是严重的,因为如果server 正在query过程中对视频进行预处理,缓存在其他thread 被delete,这将使得整个系统看起来不和谐,我们分几个层面来说,如果在server