=====================================一面=============================

1. 简单的自我介绍

2. 项目介绍,你在里面担当了什么角色?

3. 项目分层是什么样子的,各个模块的职责,交互流程是什么样的?

4. Java里面如何保证多线程安全的,有哪些组件?

5. cas的流程是什么样子的?有什么问题?能不能详细说说?AQS的原理?

6. 你们的rpc框架调用流程是什么样子的?如何解决的事件饥饿?和dubbo有没有什么区别?

7. 了解cap原则么?你们的项目保证了那两项?

8. 你们的注册中心如何保证高可用的?有没有了解其他的注册中心?有没有了解其他的rpc框架?

9. 你们的注册中心和eruka有什么区别?zookeeper和他们有什么区别?serviceComb的注册中心如何保证一致性的?

10. 能不能说说volatile的作用?double-check?java的内存模型?happens-before?还有什么场景下会用到这个原则?

11. jvm的内存结构?说说G1的回收过程?

12. netty的高性能之处?内存管理?执行过程是什么样子的?

13. 说说jvm的加载流程?

14. 说说Java里有哪些并发容器,数据结构,优缺点和应用场景?

15. Java里static是存在哪个区,生命周期是什么样的?

16. redis了解么?aof和rdb的执行流程?

17. RocketMQ在你们项目里面是有什么用途?

18. 手撕算法题-二叉树的最大宽度

=====================================二面=============================

1. 简单的自我介绍

2. 项目介绍,你在里面担当了什么角色?

3. 你们的rpc框架是纯自研?还是如何,能不能说说调用流程?

4. Java中锁了解么?能不能说说有哪几种以及各自的区别?

5. mysql里面有几种隔离级别?不可重复读和幻读有什么区别?mysql是如何解决的?

6. Epoll中ET和LT的区别,应用场景和优缺点?

7. 你们的rpc框架为什么会出现事件饥饿?能不能描述一下业务场景?

8. 谈谈你对netty的看法?封装的越好对程序猿真的越有利吗?

9. netty的内存管理能详细说说吗?如何排查netty的内存泄漏?这块内存存在于jvm的那个区域?

10. Java是如何排查堆外内存泄漏的?

11. 手撕算法-单调非递增的单链表,去掉重复的元素(12223->13)