携程Java后端一面(09.08)+ 二面(09.15)
一面(40min)
- HashMap线程不安全。是哪一步不安全?怎么解决不安全呢?
- 多线程中解决线程不安全的方法?用了哪些锁?
- 分布式锁? ---> 乐观锁 @Version --- 高并发,那你要给每一个字段都加 version 吗?
- 介绍一下三次握手,四次回收。问:三次握手变为二次;四次挥手变为三次;在四次挥手中,如果服务器端得不到回应,会怎么办?会等待多久?
- Redis和DB的一致性?(多线程 & 怎么更新顺序)
- Redis中的数据结构?
- GET和POST的区别;说出在TCP包里面结构和内容的区别?
- OSI七层模型
- 索引的优点?B+树?回表?
- 数据库的隔离级别?怎么解决的幻读?
二面(40min)
- MySQL索引优化策略
- SpringMVC 的流程(SpringMVC 的工作原理)
- 键入网址到网页显示的流程
- 常见状态码
- 有没有自定义过注解 & Spring 中的常用注解
- 对 SpringAOP 的理解
- Spring 的循环注入
- ApplicationContext?
- beanFactories?
- Redis中的常用数据结构
- Redis 与 数据库的一致性问题
- Mybatis 的底层原理
- 用没用过其他的中间件?Nginx -- 反向代理 & 常见的分配服务器策略
- 项目可以提高的点
- JVM 的垃圾回收机制 & 垃圾回收算法
- JVM 的体系结构
- TCP 的三次握手 & 四次挥手的过程(第二次挥手发送失败)
- HTTP & HTTPS 的区别
- 线程安全的集合