一面 7.10(80min)
- 项目(项目主要功能,做这个项目的出发点是什么,是否已经上线,项目创新点)
- 信息从客户端向服务器传送过程中的安全问题
- 消息队列选型?你为什么选这个?消息队列之间的对比?
- 消息队列消费的有序性问题(被问到怀疑人生)
- 消息队列消息丢失的场景?如何保证消息队列的可靠性?你有什么想法?
- Redis 常用的数据结构?使用场景?
- Redis 缓存淘汰策略
- LFU,LRU
- Redis 跳跃表
- Redis 持久化
- Java 多态讲一下?底层原理是什么?
- Java 一个类可以继承多个类吗?为什么?那么 Java 接口可以多继承吗?为什么?
- hashmap 是线程安全的吗?它为什么线程不安全?
- hashmap 是怎么插入元素的,是尾插法还是头插法?为什么?
- 如何让 hashmap 变为线程安全?
- ConcurrentHashMap jdk1.8 之前的实现为分段锁,他为什么要放弃分段锁的实现呢?你觉得分段锁有什么问题?
- 乐观锁实现原理
- ConcurrentHashMap jdk1.8 的锁实现你觉得有什么问题?讲一下。你是否觉得 synchronized 的性能会不会不太好?
- ConcurrentHashMap 怎么求集合元素总量?
- 动态代理讲一下
- 序列化,反序列化
- jvm 内存区域分配
- 垃圾回收算法
- jvm 调优
- cms 垃圾回收器的适用场景
- 问个实际问题,堆大小(新生代,老年代)怎么设置?
- 你怎么知道你的程序需要多大内存?
- spring 事务原理
- 问个 spring 的问题吧,一个类有 A,B 两个方法,B 方法使用了事务注解,在 A 方法内部调用了 B 方法,B 的事务会生效吗?
- AOP 的实现
- MySQL 存储引擎讲一下
- SQL 优化思路
- 你觉得性别这个字段适合做索引吗
二面 7.14(30min)
- 自我介绍
- 双亲委派模型
- 父类加载器加载的类,能否访问子类加载器加载的类
- jvm 内存模型
- new 一个大对象,会放在哪里
- BIO,AIO,NIO
- 多线程可重入锁的原理
- 在可重入锁中,你怎么知道这个锁是否被释放?
- redis 分布式锁
- zookeeper 分布式锁
- redis 分布式锁和 zookeeper 分布式锁的优缺点对比
- redis 宕机之后,分布式锁怎么办
- 聊了一会项目
- 有两个类A,B,B 是 A 的子类,均有静态代码块跟构造函数,调用 new B,问执行顺序
- 什么事情是你坚持最久的
- 你遇到最大的挫折是什么?是怎么挺过去的
- 反问
一面两面感觉答得一般般吧,有一部分题目没有答出来,阿里给了我两面机会也算仁至义尽了,哎接下来好好努力吧。