转载

转发—互联网公司java面试的经验

我写一点我之前面试的经验   
1.普通的互联网公司,招 api 工程师的  (12-15)
1)  spring 的生命周期
2)  spring mvc 的运行流程
3)  servlet 的生命周期
4)  mybatis 和 hibernate 的一级缓存和二级缓存
5)  mybatis 的 会话机制
6)  数据库如何调优,调优的方式
7)  redis和memcached 的区别
8)  redis的基本数据结构是什么,常用的指令有哪些
9)  redis的如何选举的(通过配置 哨兵模式)
10) 写一个单例模式 (双重检查)
11) 微服务的基本结构,比如 springcloud 的常用组件,dubbo 的常用组件
12) 什么是 CAP原则, 什么是Base 理论
13) 讲下分布式,分布式事务和锁怎么处理

2.专业技能要求高的公司,招java 工程师的
1) 介绍下常用的集合框架,比如 map set list jdk1.5 blockQueue ,他们的实现接口有哪些,用了什么方式来保证安全性
2) 介绍下 hashMap 的实现流程 (数组 + 链表 + 红黑树),红黑树和二叉树的区别
3) 说下常用的juc类, CAS 是什么 (原子锁),碰到 ABA 问题怎么处理
4) synchronized 和 lock 的区别
5) wait方法 和 sleep 方法的区别  (wait 属于 object类,只能在 同步代码块中使用)
6) 介绍下常用的线程池,线程池参数如何配置
7) 介绍下 netty的线程模型,什么是 io/bio/aio/nio,区别是什么
8) tcp 传输 粘包和 拆包的方法 (netty框架有做过处理)
9) redis 发生雪崩和缓存穿透怎么处理
10) redis aof 和 rdb 的区别
11) 消息队列的实现原理 (里面重要用阻塞队列)
12) 数据库死锁如何产生,怎么处理死锁
13) java 的基本数据类型和 字节数
14) 介绍下 OOM模型 
15) 如何产生gc,什么情况下产生 full gc
16) gc 回收算法 ((复制,整理,分代回收))
17) 讲下常用的设计模式,举例子
18) 如何设计一个秒杀系统

资源已删除
正文到此结束
该篇文章的评论功能已被站长关闭