Day505.图灵学院之面试题① -面经

Posted 阿昌喜欢吃黄桃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Day505.图灵学院之面试题① -面经相关的知识,希望对你有一定的参考价值。

图灵学院之面试题①

1、B树和B+树的区别,为什么mysql使用B+树


2、CopyOnWriteArrayList的底层原理是怎样的

  1. ⾸先ArrayList是线程不安全的。
  2. CopyOnWriteArrayList是线程安全的,其为解决前者线程不安全的情况
  3. 它内部也是⽤过数组来实现的,在向CopyOnWriteArrayList添加元素时,会复制⼀个新的数组,写操作在新数组上进⾏,读操作在原数组上进⾏并且,写操作会加锁,防⽌出现并发写⼊丢失数据的问题
  4. 写操作结束之后会把原数组指向新数组
  5. CopyOnWriteArrayList允许在写操作时来读取数据,⼤⼤提⾼了读的性能,因此适合读多写少的应⽤场景,但是CopyOnWriteArrayList会⽐较占内存,同时可能读到的数据不是实时最新的数据,所以不适合实时性要求很⾼的场景


3、Dubbo的架构设计是怎么样的?


4、Dubbo是如何服务导出的?


5、Dubbo是如何服务引入的?


6、Dubbo支持哪些负载均衡策略


7、epoll和poll的区别


8、Explain语句结果中各个字段表示什么


9、HashMap的扩容机制

扩容针对的是数组扩容,链表是不需要扩容的


10、Innodb是如实实现事务的?


11、Java死锁如何避免?


12、Java中的异常体系是怎么样的?


13、Java中有哪些类加载器


14、Java集合类1.7-1.8HashMap的变化


15、JVM中哪些垃圾回收算法


16、JVM运行时数据区中哪些是线程共享的部分?


17、Mybatis的优缺点


18、#和$的区别


19、MySql慢查询优化方案


20、MySql锁有哪些,如何理解


21、Redis和MySql如何保证数据一致性?


22、Redis中有哪些数据结构,且对应使用场景是什么?


23、ReentrantLock中tryLock()和lock()方法的区别是什么?


24、ReentrantLock中公平锁和非公平锁的实现是什么?


25、RocketMQ的事务消息是如何实现的?


26、SOA、分布式、微服务之间有什么关系?


27、SpringBoot是如何启动Tomcat的


28、SpringBoot常用注解及其底层实现


29、SpringCloud和Dubbo的区别


30、SpringCloud中有哪些常用组件,且作用是什么?


31、Spring容器启动的流程


32、Spring事务的传播机制


33、Spring事务什么时候会失效


34、Spring中的Bean是否线程安全?

最终看这个bean是否线程安全,主要看这个bean里面的代码是怎么写的,看里面的属性、方法是否的synchronzied、lock等…而不是单纯就通过Bean就可以判断是否线程安全


35、Spring中Bean创建的生命周期有哪些步骤?



36、Spring中的事务是适合实现的?


37、Sychronized的偏向锁(递归锁/可重入锁)、轻量锁、重量锁的区别


38、Synchronized和ReentrantLock的区别


39、TCP中的3次握手和4次挥手是什么?


40、ThreadLocal的底层原理


41、zookeep和eureka的区别


42、Zookeep中节点之间的数据是如何同步的?

先同步从节点日志先,然后主节点收到半数一下,就异步发送,让从节点们正式同步,从节点成功后就发送commit给主节点同步成功,然后主节点就返回客户端操作成功


43、Zookeep领导者选举的流程是怎么样的?

一上来每个节点都会投票给自己,然后发现会投不出来领导者。之后每个节点会跟其他节点进行一一比较pk,择优顺序比较zxid、myid,有一个大的就获得选票。每个节点都相互比较pk,并相互告知直接的票数是多少,最后当有一个节点的票数大于半数以上,他就会被选成领导者


44、并发、并行、串行之间的区别


45、常见的缓存淘汰算法有哪些?


46、单例模式和单例Bean的区别


47、守护线程的理解


48、

以上是关于Day505.图灵学院之面试题① -面经的主要内容,如果未能解决你的问题,请参考以下文章

图灵学院15极致优化-高性能网络编程之BIO与NIO区别

Java面试宝典每日3题:day27

①《计算机科学导论》之绪论

前端面试之vue相关的面试题

每天一道面试题:非对称加密之RSA算法

图灵学院JAVA高级架构师第四期