常见面试题

一、Java基础

  1. 1.     JVM结构原理、GC工作机制详解  
  2. 2.     JMM内存模型
  3. 3.     HashMap原理及与HashTable的区别 怎么解决hash冲突, 通过链表法,生成链表。为什么使用二叉树
  4. 4.     Java常用集合以及区别
  5. 5.     String、StringBulider和StringBuffer的区别
  6. 常用设计模式 观察者模式怎么快速的通知某个观察者
  7. Java序列化以及原理
  8. BIO、NIO、AIO分析
  9. 动态代理
  10. TCP通信协议 socket怎么实现实时传输的,通过socket封装的工具有哪些
  11. Http及Https

二、并发编程

  1. 1.      synchronized与Lock的区别,如何避免死锁
  2. 2.      简述volatile关键字 什么时候使用
  3. 3.      实现线程的两种方式
  4. 4.      线程池的应用以及实现原理
  5. 5.      JUC相关内容

三、数据库

  1. 数据库引擎:InnoDB和MyIsam的区别  为什么使用btree

参考:https://www.cnblogs.com/sunsky303/p/8274586.html

  1. Mysql ACID以及事务隔离级别
  2. Mysql索引类型以及原理

参考:https://blog.csdn.net/iefreer/article/details/15815455

  1. 如何防止SQL失效
  2. SQL如何防止攻击
  3. Explain关键字以及执行计划详解

四、分布式

  1. Zookeeper原理

(1)     zk实现原理与应用场景

(2)     zk选举机制

  1. Dubbo

(1)     Dubbo实现原理

(2)     Dubbo协议有几种

(3)     Dubbo如何注册到zk上

(4)     Dubbo负载均衡机制有哪几种

(5)     Dubbo 如何实现超时重试。熔断和服务降级

  1. RabbitMQ、RocketMQ、Kafka (了解以及基本使用)
  2. Redis

(1)     常见数据类型以及模式

(2)     Redis分布式锁实现

(3)     Redis队列

(4)     Redis的布隆过滤器及常用的数据类型

(5)     如何实现主从复制的,如何保证数据同步的

  1. 分布式事务实现数据最终一致性
  2. Shiro安全框架(应该不属于分布式内容)
  3. 分布式系统如何实现Session共享
  4. 分布式架构设计
  5. 单点登录
  6. Nginx

五、常用框架

1. Spring常见面试题(参考:)

(1)     Spring优点

(2)     Spring AOP理解

(3)     Spring IOC理解

(4)     Spring事务传播行为

(5)     Spring Bean加载过程

2. MyBatis常见面试题

(1)   优缺点

(2)   #{}和${}的区别

3. Spring Boot

(1)   Starter包含哪些内容以及工作原理,自动加载过程

(2)   Spring Boot优缺点

(3)   Spring Boot自动化配置原理

参考:https://blog.csdn.net/panhaigang123/article/details/79587612

六、性能优化

  1. JVM调优
  2. MySQL优化

七、微服务架构

  1. Spring Could如何实现注册与发现
  2. Ribbon与Fegin的区别
  3. 服务网格zuul工作原理
  4. 断路由Hystrix工作原理

以上参考:https://www.cnblogs.com/sessionbest/p/9396728.html

  1. Spring Cloud与Dubbo比较
  2. Tomcat的启动和类加载过程

springmvc 底层   单例模式  多线程  redis底层   分布式锁  动态代理  spring  aop  ioc  dubbo底层

 

posted @ 2019-02-21 17:08  那家那人那小伙  阅读(133)  评论(0编辑  收藏  举报