作业帮一二面
一面
1. Dubbo在项目扮演的角色。远程RPC。
2. RPC的实现原理。RPC原理架构。stub那个图
3. Spring框架的AOP
4. IOC容器
5.怎么理解微服务? 1. 只需要关注自己的模块;2. 易于维护,易于重构;3. 微服务:小而自治的服务,自己治理,一旦更新或者扩容不影响外部。
问题:1. 语言选择很广;2. 选择C++写的话,之后没人会,维护就很痛苦;3. 7天能重构一个服务;如果重构不了,服务拆分的不够细; 4. 上下游关系复杂。如果一个模块出现问题,可以服务降级从而不影响用户体验。
6. Restful
SOA:粗粒度,松耦合的架构
7. equals和Hashcode的了解:equals比较的是地址,克隆出一个对象,他们的地址肯定不相等,如果想比较值的话就必须重写hashcode;hashcode有可能是hash冲突。
8. 线程池
9. Java的线程模型是什么?
10. Java的类加载机制。 如果找不到类加载器,返回ClassNotFoundError
11. Innodb和MyISAM的区别
12.事务的类型: ACID, 隔离级别
13. Mysql怎么解决幻读呢?加间隙锁,锁一个区间段,在这个区间段不受外界影响
14. Mysql的Varchar 和 char 区别,char(10) 定义几个字节? --》char固定10个字符;varchar(10),小于10个的话,则插入多少个字符就存多少个
15. sql:如何衡量一个sql的好坏?explain, show index;
一个sql语言,用到了索引,偶尔慢,什么原因? (1)当redo log 写满了,要 flush 脏页 (2)Mysql被锁住了
16. HashMap的红黑树看过源码吗?这边仔细看一下!需要了解一下。
17. TCP握手,挥手; FIN:断开标志位
17. TCP握手,挥手; FIN:断开标志位
18. TCP怎么做流量控制的?滑动窗口。 怎么做拥塞控制的? 快恢复里面用到的什么算法?
19. KMP算法了解过吗?
二面
1. java允许定义嵌套类,定义嵌套类的时候static和非staic有什么区别
2. Spring在服务器上运行的时候是多线程还是多进程
3. 一般一个Spring里面有多少个线程
4. 100个并发请求会有多少个线程?
5. 线程池怎么实现?用哪些类?
6. 多线程同时修改变量怎么保证线程安全
7. reeentrantLock具体的用法
8. 泛型为什么不能直接写int,float https://www.cnblogs.com/mr-wuxiansheng/p/12950875.html
9. 为什么需要把基本数据类型和包装类区分开
10. 快排的时间复杂度
11. 还有哪些排序的时间复杂度也是 O(nlogn)?
12. 归并和快排谁的速度更快?
13. 归并排序什么场景比较适合用?从速度角度考虑
14. 输入几乎排好序的,用什么排序算法最快
15. 选择排序知道嘛
16. Mysql的索引用的什么数据结构?为什么B+树适合做索引! 这个一定要看仔细了!
17. B+ 树的插入时间复杂度是什么? https://www.jianshu.com/p/71700a464e97
18. https用了什么加密算法。为什么要都用对称和非对称两个加密算法?这个也看一下!
19. 代码:接雨水
20. 接雨水的拓展


