主题
面试速答(先看这里)
**一句话结论:**责任链模式的好处是什么?
60秒标准回答:
普本,3年经验,IOT项目,微服务+大数据,SSM,redis,kafka,go,flink,实时分析,数据过滤,自定义规则,责任链模式
责任链模式的好处是什么?都哪些场景可以用责任链?
开通的分布式一致性怎么保障的?最大努力通知。如果超时的情况如何兼容?
**答题顺序:**结论 → 原理/机制 → 关键流程 → 场景与取舍 → 易错点
回答主线:
- **要点1:**开通的分布式一致性怎么保障的?
- **要点2:**重试是如何实现的?
- **要点3:**除了 Sleep 还有其他方案吗?
- **要点4:**MQ 是如何实现的削峰填谷?
- **要点5:**Pull 对 MQ 造成压力怎么办?
**记忆锚点:**rehash → sleep → Kafka → Mysql → Redis → key
关键取舍:
- 性能优化做过吗?
- RR 的缺点是什么?
易错提醒:
- 回滚操作调失败了怎么办?
- 下游系统失败的原因可能是什么?
加分表达:
- 都哪些场景可以用责任链?
- 如果超时的情况如何兼容?
- 介绍一下, arthas ,优化流程, CMS 优化, Mysql 隔离级别默认是哪个?
追问准备:
- 普本,3年经验,IOT项目,微服务+大数据,SSM,redis,kafka,go,flink,实时分析,数据过滤,自定义规则,责任链模式 责任链模式的好处是什么?
- 都哪些场景可以用责任链?
- 开通的分布式一致性怎么保障的?
- 如果超时的情况如何兼容?
面试者背景
普本,3年经验,IOT项目,微服务+大数据,SSM,redis,kafka,go,flink,实时分析,数据过滤,自定义规则,责任链模式
面试过程
> 责任链模式的好处是什么?都哪些场景可以用责任链? > > 开通的分布式一致性怎么保障的?最大努力通知。如果超时的情况如何兼容? > > 重试是如何实现的?sleep?这个过程应用重启了怎么办? > > 除了Sleep还有其他方案吗?回滚操作调失败了怎么办?下游系统失败的原因可能是什么?失败人工介入? > > 最大努力通知为啥不用MQ?遇到什么问题会考虑用MQ?作用?异步、削峰、解耦。 > > MQ是如何实现的削峰填谷?消息投递数量会不会超过消费者的消费能力,pull,push? > > Pull对MQ造成压力怎么办?拉的很慢消息堆积了怎么办?堆积之后如何解决?增加消费者、 > > Kafka的重平衡问题介绍下?重平衡的过程是怎么样?重平衡过程的问题有哪些?STW,重复消费。 > > 如何避免重复消费对业务造成影响? > > Kafka的消费者可能有哪些状态?kafka的高水位是什么?LEO > > 一句话总结HW的作用? > > 性能优化做过吗?介绍一下,arthas ,优化流程,CMS优化, > > Mysql隔离级别默认是哪个?为啥是RR?RR解决了幻读吗?完全解决了吗? > > RR的缺点是什么?RR相比RC多了什么?为啥很多大公司要把RR改成RC? > > Mysql的行级锁到底锁的是什么东西? > > Redis常用数据结构有哪些?hash、string、set、zset、list、geo、 > > Reids渐进式rehash过程是怎么样的?为啥要这么干?每次渐进rehash的时候怎么选择rehash哪些数据呢? > > 为什么redis有一批key过期,为啥其他的key读写效率降低?单线程 > > 如何避免这种问题?被动删除、随机过期时间, > > Redis的集群模式介绍下,主从、哨兵、分片。怎么避免脑裂的问题?能彻底避免吗?
题目解析
> 责任链模式的好处是什么?都哪些场景可以用责任链?
责任链:https://www.yuque.com/laiyanhong-9tr5c/zwpzru/ntrtq7its9137awe
> 开通的分布式一致性怎么保障的?最大努力通知。如果超时的情况如何兼容? > > 重试是如何实现的?sleep?这个过程应用重启了怎么办? > > 除了Sleep还有其他方案吗?回滚操作调失败了怎么办?下游系统失败的原因可能是什么?失败人工介入? > > 最大努力通知为啥不用MQ?遇到什么问题会考虑用MQ?作用?异步、削峰、解耦。
这里面候选人提到自己用了最大努力通知,但是实现方式竟然是自己在代码中sleep,然后自己重试,这个方案肯定是不过关的。因为sleep这种一旦应用重启之后,数据就都丢失了,任务就没人继续调度重试了。
所以好一点的方案肯定是用MQ,依赖他的可靠性来实现。
> MQ是如何实现的削峰填谷?消息投递数量会不会超过消费者的消费能力,pull,push? > > Pull对MQ造成压力怎么办?拉的很慢消息堆积了怎么办?堆积之后如何解决?增加消费者、
> Kafka的重平衡问题介绍下?重平衡的过程是怎么样?重平衡过程的问题有哪些?STW,重复消费。
> 如何避免重复消费对业务造成影响?
> Kafka的消费者可能有哪些状态?kafka的高水位是什么?LEO > > 一句话总结HW的作用?
📄 ✅Kafka 高水位了解过吗?为什么 Kafka 需要 Leader Epoch?
打开文档:✅Kafka 高水位了解过吗?为什么 Kafka 需要 Leader Epoch?
> 性能优化做过吗?介绍一下,arthas ,优化流程,CMS优化,
> Mysql隔离级别默认是哪个?为啥是RR?RR解决了幻读吗?完全解决了吗?
> RR的缺点是什么?RR相比RC多了什么?为啥很多大公司要把RR改成RC?
> Mysql的行级锁到底锁的是什么东西?
> Redis常用数据结构有哪些?hash、string、set、zset、list、geo、
> Reids渐进式rehash过程是怎么样的?为啥要这么干?每次渐进rehash的时候怎么选择rehash哪些数据呢?
> 为什么redis有一批key过期,为啥其他的key读写效率降低?单线程 > > 如何避免这种问题?被动删除、随机过期时间,
📄 ✅Redis中有一批key瞬间过期,为什么其它key的读写效率会降低?
打开文档:✅Redis中有一批key瞬间过期,为什么其它key的读写效率会降低?
> Redis的集群模式介绍下,主从、哨兵、分片。怎么避免脑裂的问题?能彻底避免吗?