tcp/ip
-
tcp/ip的三次握手和四次挥手是什么概念,以及状态变化过程?
-
建立连接需要3次,为什么断开连接需要4次?
-
三次握手有哪些不安全性?
-
TCP和UDP的区别?TCP是通过什么方式来保证可靠性的
UDP TCP 是否连接 无连接 面向连接 是否可靠 不可靠传输,不使用流量控制和拥塞控制 可靠传输,使用流量控制和拥塞控制 连接对象个数 支持一对一,一对多,多对一和多对多交互通信 只能是一对一通信 传输方式 面向报文 面向字节流 首部开销 首部开销小,仅8字节 首部最小20字节,最大60字节 适用场景 适用于实时应用(IP电话、视频会议、直播等) 适用于要求可靠传输的应用,例如文件传输 -
tcp四层网络模型和osi七层网络模型分别是什么?以及每一层的作用
-
什么是滑动窗口协议?它的实现原理是什么?
-
服务器上TIME_WAIT状态的连接过多,怎么解决?
-
什么是NIO、BIO、AIO?他们的区别?
-
了解过多路复用吗?它是一个什么实现原理?
-
epool和select的区别是什么?
http
- http和https的区别
- 简单说说https是如何保证安全传输的
- https是不是绝对安全的?有没有办法被破解?
- http无状态协议,怎么理解无状态协议。如何实现有状态的请求
- 说说http协议中的302状态码的作用
- 304缓存原理
- http协议1.0和http协议1.1的区别
- 如何保证基于http协议的接口的安全性
- http协议上传文件,数据如何传输?
- 说说http协议的优缺点
- 一次http请求的完整交互流程
序列化
- 什么是序列化,Java是如何实现序列化的
- 如果一个子类实现了序列化,父类没有实现,那么父类中的成员变量能否被序列化?
- 你有了解过哪些序列化技术?以及他们之间的差异性?
- transient是干嘛的?
- 有什么方法能够绕过transient的机制。这个实现机制的原理是什么?
- serializable的安全性如何保证?
- 有没有了解过protobuf,它的序列化实现原理是什么?
- serialVersionUID的作用是什么?如果我不设置serialVersionUID,有没有问题?
RMI
- 什么是RPC
- 实现java RMI
- RPC原理
- 了解JAVA RMI
- 基于java 实现RMI
- RMI通信原理分析
- 实现自己的RPC框架
Zookeeper
- 了解zookeeper以及设计思想
- zookeeper集群角色
- 深入分析ZAB协议
- 从源码层面分析leader选举的实现过程
- 数据存储
- 基于java api 初探zookeeper的使用
- 深入分析Watcher机制的实现原理
- Curator客户端的使用,简单高效
dubbo
- 为什么要使用dubbo
- dubbo的架构
- dubbo的使用
- dubbo注册中心原理
- 如何快速启动Dubbo服务
- 多协议支持
- 多注册中心支持
- 启动检查机制