1.秒杀场景中,如何保证Redis预减库存与DB实际扣减的一致性?说出至少两种方案并对比优缺点。
2.订单支付成功后需同步更新库存、发放优惠券、通知物流。若部分步骤失败,如何设计补偿机制?是否可用消息队列替代TCC?
3.大促时某商品详情页QPS突增10万+,导致Redis集群单节点被打爆。如何快速定位并解决?
4.订单表按user_id分库后,如何高效实现“根据商家ID+时间范围”查询订单?
5.订单30分钟未支付自动关闭,要求误差<1秒。对比RocketMQ延迟消息 vs 时间轮算法 vs Redis ZSet的实现成本和可靠性。
6.基于Redis实现的分布式锁,在GC停顿或网络延迟时可能导致锁失效。如何用Redisson解决?是否还有其他方案?
7.商品价格变更后,先更新DB还是先删缓存?如何解决并发场景下的脏读问题?
8.如何在不影响线上数据的前提下,对淘宝交易链路进行全链路压测?重点说明影子库、流量染色、Mock服务的实现要点。
9.某直播间突然爆火,接口QPS从1k飙升至50k。如何通过Sentinel实现:① 匀速排队 ② 冷启动 ③ 集群限流?
10.大促期间频繁Full GC,监控显示Old区占用>90%但无内存泄漏。如何确定是合理使用还是优化空间?给出诊断命令和参数调整思路。
11.支付回调接口使用固定线程池,突发流量下任务堆积导致线程池阻塞。如何动态调整线程数?需考虑什么风险?
12.订单ID需满足全局递增、高可用、低延迟。对比Snowflake与美团Leaf方案,说明淘宝可能的选择及原因。
13.结算页需调用5个服务获取数据,同步调用总耗时800ms。如何通过CompletableFuture或RxJava将耗时降至200ms以内?画流程图说明线程模型。
整理了Java面试高频题型(深度详解)+面试突击pdf,需要的可以分享,祝大家早日拿到想要的offer~
声明:本文内容由脉脉用户自发贡献,部分内容可能整编自互联网,版权归原作者所有,脉脉不拥有其著作权,亦不承担相应法律责任。如果您发现有涉嫌抄袭的内容,请发邮件至maimai@taou.com,一经查实,将立刻删除涉嫌侵权内容。