2020年常见面试问题
1. 基础知识:HashMap,ConcurrentHashMap,锁(Synchronized,ReentrantLock,自旋锁),AQS,线程池,volatile,异常处理,Error和Exception,CountDownLatch和CyclicBarrier
2. 并发知识:高并发怎么办,rpc,舱壁模式,NIO,分布式ID生成,大QPS拦截(布隆过滤器,本地布隆过滤器),随机踢出
3. 缓存:击穿、更新策略,数据结构,常用场景,redission,tryLock
4. 项目介绍、遇到的问题、有什么优化的地方
5. 中间件:dubbo(序列化,源码),MQ(作用,负载),zookeeper(zabx)
6. 如果你来设计一个系统
7. 算法
8. JVM模型、垃圾收集器优化选择
9. 对公司的了解
10. 你有什么想问的
11. 自我介绍
12. 常用linux命令:AWK
13. 数据库:索引,慢查询,主从复制,log日志,分库分表,mysql分层,jdbcShare,查询执行顺序,索引和其他where条件在哪过滤
14. 监控:异常,每层调用时间(听云),服务器负载,注册中心,慢查询
15. 常见异常问题处理:OOM,CPU100%
16. 设计模式、六大原则
17. 一个请求
18. 框架:Spring(启动过程,事务传播特性,事务,AOP,IOC,动态代理/CGLI),mybatis
19. Code Review
20. 安全:加密算法,XSS,提交频率,注入
21. Docker
22.分布式:分布式事务(分布式事务:2PC;3PC;幂等性;生产者去重;消费者幂等性),分布式锁(tryLock),分布式ID生成,分布式定时任务,熔断、降级,ABA
23. 测试:单元测试,mock测试
24. 多语言:python
25. 什么频繁换工作:前期主动,后期被动,想找个提高技术能力的公司
26. 自动化:jenkins,单元测试,压力测试,测试工具(Postman,jmeter),发布过程自动化,自动化代码管理,自动化测试,自动化安全检测,自动化部署,自动化监控,自动化报警,自动化失效转移,自动化失效恢复,自动化降级,自动化分配资源,异常监控
27.