库存分段提高秒杀并发度
做的黑马点评的项目,面试时被问到在使用分布式锁解决超卖的情况下如何提高并发?回答将库存分段,比如100个库存,分别存在5redis节点上,每个节点上存储20个。但面试官问如果有一个节点上库存卖光,但总库存还有,怎么保证能卖就卖?当时回答的是提供一个协调者,监控每个redis节点上的剩余库存量,然后通过协调者进行转发。但是面试官对这个答案不太满意,说协调者仍然是串行的并且秒杀是很快的,如果通过一次协调者转发的话会有延迟并且脏读的问题。请问各位大佬这个分段库存在实际的应用场景中到底该怎么设计?#秒杀项目##蚂蚁##面经##redis##java##阿里#
全部评论
实际场景就是不会用分段库存。简单点就redis硬抗7、8w秒杀的请求,超过容量的就限流掉,给用户一个兜底。但是redis容易丢数据(实际上也没那么容易丢,5个9),所以用mysql来抗写,redis抗读,这时候会去魔改mysql内核,让mysql能够支持5w的写请求
草了,刚面试那个面试官也说的分段,给我说晕了
m
m
m
m
m
m
m
点评是真火呀
m
m
m
m
m
m
m
m
相关推荐
12-22 20:12
武汉理工大学 前端工程师 桃子哈哈哈:遇到不会的也尽力按自己的思路来讲给面试官主要要给面试官体现你的思考,然后就把每次面试当做一次学习就好了校友
点赞 评论 收藏
分享
12-12 01:48
中国地质大学(武汉) Java 程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享