# 真实面试题1
# 电话一面
1、自我介绍、自己做的项目和技术领域
2、项目中的监控:那个监控指标常见的有哪些?
3、微服务涉及到的技术以及需要注意的问题有哪些?
4、注册中心你了解了哪些?
5、consul 的可靠性你了解吗?
6、consul 的机制你有没有具体深入过?有没有和其他的注册中心对比过?
7、项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理
8、Spring Boot 除了自动配置,相比传统的 Spring 有什么其他的区别?
9、Spring Cloud 有了解多少?
10、Spring Bean 的生命周期
11、HashMap 和 hashTable 区别?
12、Object 的 hashcode 方法重写了, equals 方法要不要改?
13、HashMap 线程不安全的出现场景
14、线上服务 CPU 很高该怎么做?有哪些措施可以找到问题
15、JDK 中有几个线程池?顺带把线程池讲了个遍
16、SQL 优化的常见方法有感些
17、SQL索引的顺序,字段的顺序
18、查看 SQL是不是使用了索引?(有什么工具)
19、TCP 和 UDP 的区别?TCP 数据传输过程中怎么做到可靠的?
20、说你知道的排序算法吧
21、查接一个数组的中位数?
22、你有什么问题想问我的吗?
# 二面
1、自我介绍、工作经历、技术栈
2、项目中你学到了什么技术?(把三项目具体描述了很久)
3、微服务划分的粒度
4、微服务的高可用怎么保证的?
5、常用的负载均衡,该怎么用,你能说下吗?
6、网关能够为后端服务带来哪些好处?
7、Spring Bean 的生命同期
8、xml 中配置的 init、destroy 方法怎么可以做到调用具体的方法?
9、反射的机制
10、Object类中的方法
11、 hashcode 和 equals 方法常用地方
12、对象比较是否相同
13、hashmap put方法存放的时候怎么判断是否是是重复的
14、Object to String 方法常用的地方,为什么要重写该方法
15、 Set 和 List 区别?
16、Arraylist 和 LinkedList 区别
17、如果存取相同的数据,ArrayList 和 LinkedList 谁占用的空间更大?
18、Set 存的顺序是有序的吗?
19、常见 Set 的实现有哪些?
20、TreeSet 对存入对数据有什么要求呢?
21、HashSet 的底层交现呢
22、TreeSet 底层源码有看过吗?
23、HashSet 是不是线程安全的?为什么不是线程安全的?
24、Java 中有哪些线程安全的 Map?
25、Concurrenthashmap 是怎么做到线程安全的?
26、HashTable 你了解过吗?
27、如何保证线程安全问题?
28、synchronized、lock
29、volatile 的原子性问题?为什么i++这种不支持原子性?从计算机原理的设计来讲下不能保证原子性的原因?
30、happens before 原理
31、cas 操作
32、lock 和 synchronized 的区别?
33、公平锁和非公平锁
34、Java读写锁
35、读写锁设计主要解决什么问题?
36、你项目除了写Java代码,还有前端代码,那你知道前端有哪些框架吗?
37、MySQL 分页查询语句
38、MySQL 事物特性和隔离级别
39、不可重复读会出现在什么场景?
40、sql having 的使用场景
41、前端浏览器地址的一个http请求到后端整个流程是怎样的?
42、http默认端口,https默认端口
43、DNS 你知道是干嘛的吗?
44、你们开发用的 ide 是啥?你能说下 idea 的常用几个快捷键吗?
45、代码版本管理你们用的是啥?
46、git rebase 和 merge 有什么区别?
47、你们公司加班多吗?