面经

4 minute read

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

Updated:

Leave a comment