来自技术鼓励师的鼓励,14道经典面试题,你知道答案吗?
1、redis线程模型,底层原理,如何实现高并发,高可用,持久化。redis集群扩容与数据同步问题。redis序列化用的哪种方式,如何防止穿透?
2、mq的原理,如何保证消息可靠性传输,如何处理消息丢失,解决幂等性。mq的消息延时和过期失效。如何自己设计一个消息中间件?
3、dubbo的原理,spi思想,如何进行服务治理,dubbo的服务降级,失败重试设置。如何自己设计一个类似dubbo的rpc框架?
4、AQS的实现原理,哪些地方用到AQS/CAS。ConcurrentHashMap原理,他的segment锁是如何实现的。Java的线程模型,这个模型下的并发可能出现哪些问题,如何处理?
5、synchronized是如何实现的,他和lock的区别。
6、如何处理mysql主从同步延迟?
7、mybatis的原理和mapper接口调用的原理。
8、tomcat线程模型。
9、分布式事务场景和解决方案,redis分布式锁和zookeeper分布式锁。
10、TCP三次握手和四次挥手,为什么要这样做。
11、项目中遇到哪些挑战,怎么解决?
12、如何设计高可用/高并发系统?
13、分布式环境下,如何保持redis与mysql数据的一致性?
14、聊聊dubbo、redis、mq里面踩过的一些坑。