基础部分--
1进程与线程的区别;
2简单介绍一下进程的切换过程;
3你经常使用的Linux命令 ;主要用来解决什么问题;
4为什么tcp建立连接需要3次握手 断连需要4次;
5为什么tcp关闭链接时需要time_wait状态;为什么要等2MSL;
6一次完整的http请求是怎样的;
7htttp2和http的区别是什么
8你的项目中用了什么设计模式 主要用来解决什么问题
9object 中equals和hashcode分别作用是什么
10final finally finalize的区别
11Java的异常机制
12Javajdk版本特点
jvm--
1简单说一下jvm的内存模型;
2什么情况会出发fullgc
3java类加载器有几种 关系是怎样的
4双亲委派机制是怎样的 有什么好处
51.8为什么用metaspace替换掉permGen metaspace保存在哪里
6 编译期会对指令做那些优化
7简述一下volatile可以解决什么问题 如何做到的
8简述一下GC的分代回收
9G1垃圾回收算法与cms的区别有那些
10对象引用有哪几种方式 有什么特点
11使用过那些jvm调试工具 ,主要分析那些内容
多线程--
1如何实现一个生产着与消费着模型(锁 信号量 线程通信 阻塞队列)
2如何理解线程的同步和异步 阻塞与非阻塞
3线程池处理任务的流程是怎样的
4wait 和sleep
5synchronized和reentrantlook有什么不同 各适合什么场景
6读写锁适用于什么场景 reentrantReadWriteLock是如何实现的
7线程之间如何通信
8保证线程同步的方法有那些
9如何尽可能提高多线程并发性能
10ThreadLocal用来解决什么问题 ThreadLocal是如何实现的
11死锁的产生条件 如何分析是否有线程死锁
12在实际工作中遇到过什么样的并发问题, 如何发现排查 并解决的;
数据结构与算法
1各种排序算法实现和复杂度,稳定性
2二叉树的前中后遍历
3翻转句子中的单词顺序
4用栈模拟队列 或者用队列模拟栈
5对10亿数据进行排序 限制内存为1G
6去掉两个数据中重复的数字
7将一颗二叉树转成镜像
8确定一个字符串的括号是否匹配
9如何查找两个二叉树节点的最近公共祖先
spring相关
1ssh和ssm有什么区别;
2能描述一下 spring context 初始化的整个流程吗
3简单介绍一下bean的生命周期和作用域
4spring配置中的placeholder占位符是如何替换的 有什么办法可以实现自定义的配置替换
5springMVC的工作流程是怎么样的
6spring如何解决循环依赖问题
7bean的构造方法 @PostConstract注解 InitializingBean init-method的执行顺序是怎么样的
8说说netty中的那些重要对象;他们之间的关系是怎么样的
9prc与http的区别是什么 什么场景适合用rpc 什么适合用http
10rpc的交互流程是怎么样的
11请介绍一下mybatis的缓存机制
12mybatis如何配置动态sql有哪些动态sql标签
缓存--
1你用过Redis那些数据结构 用在什么场景下
2Redis有那些持久化方式 去别是什么
3Redis的过期机制是怎样的 Redis有哪些淘汰机制
4如何保证redis的高并发高可用
5如何保证redis实现延时队列 如何使用redis实现分布式锁
其他
1使用过消息队列吗 在什么场景下使用的 用来解决什么问题
2使用队列时如何保证可靠性
3mq有可能发生重复消息吗 如何解决
4在数据中查询语句速度很慢 如何优化
5数据库事物有那些特性 事物的隔离级别有哪几种
6如何对sql进行优化
网友评论