面经
1、Java内存模型、主内存和工作内存交互操作
https://zhuanlan.zhihu.com/p/58387104
2、volatile怎么实现的、工作原理是什么、总线嗅探机制了解吗
https://juejin.cn/post/6844903989998288910
https://www.cnblogs.com/aobing/p/12840913.html
3、volatile实现懒汉式双检锁,为什么需要加volatile关键字?
https://juejin.cn/post/6844903772892692487
4、synchronized的锁优化有哪些、讲一下锁状态和锁升级
https://www.cnblogs.com/aspirant/p/11470858.html
5、什么情况下用ReentrantLock而不用synchronized
https://www.cnblogs.com/fanguangdexiaoyuer/p/5313653.html
6、Java的中断怎么实现,为什么synchronized不能中断,ReentrantLock可以中断
https://www.jianshu.com/p/8000b85c8fc5
https://cloud.tencent.com/developer/article/1622813
7、ReentrantLock怎么实现的?
https://juejin.cn/post/6844903805683761165
8、列举几种你知道的垃圾回收机制
https://blog.csdn.net/AlbenXie/article/details/103691811
9、CMS垃圾收集的原理
https://www.cnblogs.com/aspirant/p/8663911.html
https://www.jianshu.com/p/576096bfc839
https://zhuanlan.zhihu.com/p/340530051
https://juejin.cn/post/6844903669251440653
10、有什么方法来避免Full GC
https://www.jianshu.com/p/27703ef3de65
11、JVM是如何避免Minor GC时扫描全堆的?
https://tech.meituan.com/2017/12/29/jvm-optimize.html
12、NIO和BIO
https://juejin.cn/post/6844903952924803080
13、io多路复用是什么? epoll、select、poll的不同点和应用场景是什么?
https://my.oschina.net/yinjihuan/blog/4390277
https://cloud.tencent.com/developer/article/1665502
https://www.jianshu.com/p/fc1d53e7e470
https://www.cnblogs.com/aspirant/p/9166944.html
14、谈一下Java类加载机制
https://juejin.cn/post/6844903564804882445
https://blog.csdn.net/qq_27093465/article/details/70292221
15、ConcurrentLinkedQueue和LinkedBlockingQueue
https://segmentfault.com/a/1190000011094725
https://cloud.tencent.com/developer/article/1100077
https://juejin.cn/post/6862577719658430472
16、CopyOnWriteArrayList使用场景? 优缺点是什么?
https://segmentfault.com/a/1190000022544386
17、数据库中读写分离的机制
https://juejin.cn/post/6844903828588855309
18、进程间通信方式
https://blog.csdn.net/violet_echo_0908/article/details/51201278
19、Linux管道用什么来实现的
https://segmentfault.com/a/1190000009528245
20、虚拟内存、分页内存管理、多级分页、局部性原理
https://blog.csdn.net/qq_36578872/article/details/106054775
https://zhuanlan.zhihu.com/p/126097769
21、浏览器输入www.baidu.com 到显示页面经历了什么过程
https://juejin.cn/post/6844903616101220366
22、HTTPS的加解密过程
https://www.jianshu.com/p/918d9f517749
23、TCP的拥塞处理机制
一个拥塞控制算法一般包括慢启动算法、拥塞避免算法、快速重传算法、快速恢复算法四部分
慢启动是指初始化启动的窗口数量小,随着返回的ack增加,窗口数量成指数级上升;
拥塞避免是窗口数量达到一个阈值后,不再指数级上升,而是+1
快速重传是指在发送端收到连续的(一般是3个)重复ack之后,立即重传报文,不再等待超时时间。
快速恢复是先缩短窗口大小,再根据收到的ack数量调整窗口大小。
24、MySQL聚集索引和非聚集索引 查询回表 覆盖索引
https://zhuanlan.zhihu.com/p/86614991
25、MySQL怎么实现分布式锁、数据库的唯一索引知道吗
https://segmentfault.com/a/1190000023045815
26、mysql 隔离级别 mvcc 间隙锁 非索引列查询锁表
https://tech.meituan.com/2014/08/20/innodb-lock.html
27、说一下HTTP和HTTPS的区别,客户端怎么和CA来进行交互?
https://blog.csdn.net/weixin_42139375/article/details/83478418
https://blog.csdn.net/u010164190/article/details/104477886
28、协程是什么?协程、进程、线程之间的区别是什么?
https://www.cnblogs.com/lxmhhy/p/6041001.html
29、了解强软弱虚这几种引用吗?你认为软引用和弱引用的适用场景是什么
https://www.jianshu.com/p/825cca41d962
30、线程间通信方式
https://www.cnblogs.com/fanguangdexiaoyuer/p/10834737.html
31、讲一讲线程池的构造?讲讲自带的几个线程池,什么场景下使用哪个?自己创建的话,什么情况下使用什么参数?
https://juejin.cn/post/6844903634975768590
32、jdk1.8 jvm内存划分
https://blog.csdn.net/bruce128/article/details/79357870
https://blog.csdn.net/q5706503/article/details/84640762
https://blog.csdn.net/qq_31615049/article/details/81611918
https://www.jianshu.com/p/7baffafc3952
33、redis作注册中心?
https://juejin.cn/post/6850418115017179143
https://www.cnblogs.com/yougewe/p/12852106.html
34、RedisCluster slot 迁移过程中,当有请求到了旧节点会出现什么情况,如果数据不存在旧节点会给客户端发什么指令?
https://blog.csdn.net/u011535541/article/details/78834565
35、怎么进行 SQL 语句性能分析?讲一下 Explain 展示的有哪些信息?
https://blog.csdn.net/leshami/article/details/49069199
36、ArrayList的扩容方式,扩容时机
https://blog.csdn.net/FateRuler/article/details/81539590
37、hashmap 1.8为什么使用红黑树而不是avl树? jdk1.8扩容怎么实现的? jdk1.7 1.8对比
https://blog.csdn.net/carson_ho/article/details/79373026
https://juejin.cn/post/6844903574552461320
https://www.jianshu.com/p/bdfd5f98cc31
https://blog.csdn.net/21aspnet/article/details/88939297
https://juejin.cn/post/6844904018733432845
38、Tomcat的类加载器了解么?
https://juejin.cn/post/6844903550300979214
https://www.cnblogs.com/aspirant/p/8991830.html
39、urlClassLoader?
https://cloud.tencent.com/developer/article/1674553
40、mysql和nosql
https://www.codercto.com/a/24209.html
41、spring用了哪些设计模式?
https://juejin.cn/post/6844903849849962509
42、concurrentHashMap 1.7 VS 1.8 cas+synchronized怎么应用的?
https://my.oschina.net/xiaolyuh/blog/3080609
https://blog.csdn.net/huanghanqian/article/details/81837419
43、zk怎么实现服务注册和发现?
https://blog.csdn.net/zyhlwzy/article/details/101847565
44、ConcurrentSkipListSet是什么?
https://segmentfault.com/a/1190000016214450
45、juc下有哪些并发容器包?
https://blog.csdn.net/weixin_44868863/article/details/90761410
46、http1.0 1.1 2.0优化的点是什么?
https://juejin.cn/post/6844903489596833800
47、@autowired和@resource的区别是什么?
https://blog.csdn.net/u010013573/article/details/86655861
https://blog.csdn.net/weixin_43795033/article/details/107980120
48、bean的循环引用怎么解决的?
https://juejin.cn/post/6844903806757502984
49、bean 作用域有哪些?
https://blog.csdn.net/icarus_wang/article/details/51586776
50、foreach 和 jdk1.8 stream比较
https://blog.csdn.net/qq_34996727/article/details/80182474
https://www.codenong.com/cs105349315/
51、java 序列化方式?
https://juejin.cn/post/6844904070101090311
https://juejin.cn/post/6844903848167866375
52、spring @transactional事务
https://juejin.cn/post/6844903801841778702
53、Java异常体系?
https://www.cnblogs.com/lulipro/p/7504267.html
54、ssh如何配置免密登录?
https://blog.csdn.net/mmd0308/article/details/73825953
55、java新版本特性
https://juejin.cn/post/6844904133250531341
56、p99和p999 准确率和召回率
https://www.cnblogs.com/hunternet/p/14354983.html
https://blog.csdn.net/Cheese_pop/article/details/78228156
https://blog.csdn.net/liu123641191/article/details/80364334
57、volatile双检锁方式可以去掉volatile变量吗?
https://blog.csdn.net/x763795151/article/details/109015712
https://developer.aliyun.com/article/714497
57、cdn流程
https://baijiahao.baidu.com/s?id=1633945802472340217&wfr=spider&for=pc
https://zhuanlan.zhihu.com/p/306069528
58、dns协议是什么层协议? 传输层使用什么协议?
https://www.zhihu.com/question/310145373
https://scoolor.github.io/2018/11/10/dns-udp-tcp/
59、string为什么不可变?
https://juejin.cn/post/6844903550988845063
60、多个应用多个数据库之间的一致性怎么去保证
https://segmentfault.com/a/1190000022435560
https://zhuanlan.zhihu.com/p/130416752
61、mysql数据库的类型? 时间类型?
62、Java包装类? 自动装箱和拆箱?
https://zhuanlan.zhihu.com/p/65538963
63、BigDecimal类的比较?为什么用compareTo代替equal?
https://blog.csdn.net/weixin_39690972/article/details/113581920
64、kafka和zookeeper和offset的关系是什么?
https://www.jianshu.com/p/833b64e141f8
https://www.jianshu.com/p/5aa8776868bb
https://github.com/cnfree/Journal/blob/master/%E6%B6%88%E6%81%AF%E9%98%9F%E5%88%97/Kafka/kafka%E7%9F%A5%E8%AF%86%E7%82%B9.md
https://www.cnblogs.com/TM0831/p/13386184.html
65、数据库表设计三大范式
https://www.cnblogs.com/ahu-lichang/p/10899747.html
66、mybatis和jdbc的区别
https://blog.csdn.net/dsif1995/article/details/76775910
67、深拷贝和浅拷贝
https://juejin.cn/post/6844903806577164302
68、缓存和数据库的一致性,应该怎样保证? redis 热key问题?
https://juejin.cn/post/6844903941646319623
https://www.cnblogs.com/rjzheng/p/10874537.html
69、gc时间与内存分配、服务可用性调优?
https://tech.meituan.com/2017/12/29/jvm-optimize.html
70、数据库崩溃时,事务的恢复机制
https://blog.csdn.net/weixin_34321959/article/details/113612064
71、高并发的解决方案
https://zhuanlan.zhihu.com/p/58038387
72、有没有遇到过内存泄漏?故障排查?
https://blog.csdn.net/fishinhouse/article/details/80781673
73、cas 有什么缺点? aba问题怎么解决?
https://blog.csdn.net/qq_41706675/article/details/82794915
https://www.cnblogs.com/raicho/p/13328780.html
74、如何优化代码中大量的if-else?
https://juejin.cn/post/6844904083665453063
75、趣味智力题
https://juejin.cn/post/6844903686238371847
Leave a comment