库存服务代码调试以及打印日志观察服务的运行流程是否正确
模拟写数据时间长,当数据没写完我去读数据,这个是应该卡死吗?
test的结果就是卡死。
商品库存:
1.一个更新库存的请求过来,然后此时会先删除redis中的缓存, 然后模拟卡顿5秒中
2.在这个卡顿的20秒钟内,我们发送一个查询商品缓存的读请求,因为此时redis中没有缓存,就会来亲求讲数据库中最新的数据加载出来
3、此时读请求会路由到同一个内存队列中,阻塞住,不会执行
4.等待20秒钟后,写请求完成了数据库的更新操作后,读请求才会执行
5.读请求执行的时候,会将最新的数据查询出来
数据库保存两条数据。
id为1的是修改用,id为2是查看用。
一读一写是很正常的可以拿到数据,但是如果是多个写,同事压过来,加了延时后,数据库里还是最先的那条数据,这结果就不对了。
---------------------------------------------------------------------------
国之殇,未敢忘!
南京大屠杀!
731部队!
以及核污染水排海等一系列全无人性的操作,购买他们的食品和为它们提供帮助只会更加变本加厉的害你,呼吁大家不要购买日本相关产品
昭昭前事,惕惕后人
吾辈当自强,方使国不受他人之侮!
---------------------------------------------------------------------------
作者:三号小玩家
出处:https://www.cnblogs.com/q1359720840/
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。 版权信息