每日后端面试5题 第八天

1.UDP和TCP协议的区别

1.UDP无连接,速度快,安全性低,适合高速传输、实时广播通信等。

2.TCP面向连接,速度慢,安全性高,适合传输质量要求高、大文件等的传输,比如邮件发送等。

(还有:TCP只能是一对一的,UDP支持一对一、一对多、多对一)

(还有:TCP首部开销有20个字节;UDP分组首部开销小,只有8个字节)

2.TCP 的三次握手和四次挥手

三次握手(Three-Way Handshake):

  1. 客户端向服务器发送一个SYN(同步)报文,表示请求建立连接。

  2. 服务器收到SYN报文后,向客户端发送一个SYN+ACK(同步+确认)报文,表示同意建立连接。

  3. 客户端收到SYN+ACK报文后,再向服务器发送一个ACK(确认)报文,表示连接建立成功。

四次挥手(Four-Way Handshake):

  1. 客户端向服务器发送一个FIN(结束)报文,表示要关闭连接。

  2. 服务器收到FIN报文后,向客户端发送一个ACK报文,表示收到关闭请求。

  3. 服务器继续发送数据,当数据发送完毕后,服务器向客户端发送一个FIN报文,表示服务器也准备关闭连接。

  4. 客户端收到FIN报文后,向服务器发送一个ACK报文,表示收到关闭请求。

3.什么是IoC和DI

IoC是控制反转(Inversion of Control ),即将创建对象的控制权反转交给容器(Container)。

DI是依赖注入(Dependency Injection),即通过外部的方式将对象注入到需要的地方。

。他们之间的关系如图:

详细可参考这篇文章什么是IoC 和 DI_ioc和di_不回头~的博客-CSDN博客

4.JWT令牌的作用和组成

用来作为登录验证的标记,防篡改

3部分

头部Header,负载Payload,签名Signature

Header

算法和模型

Payload

存储有关用户的数据

Signature

结合前两部分以及一个密钥生成

5.Maven主要有什么作用

1.依赖管理(管理jar包)

2.构建管理(清理、编译、打包等)

相关推荐
a努力。8 分钟前
宇树Java面试被问:方法区、元空间的区别和演进
java·后端·面试·宇树科技
allan bull1 小时前
在节日中寻找平衡:圣诞的欢乐与传统节日的温情
人工智能·学习·算法·职场和发展·生活·求职招聘·节日
a程序小傲1 小时前
蚂蚁Java面试被问:注解的工作原理及如何自定义注解
java·开发语言·python·面试
杜子不疼.1 小时前
【LeetCode 852 & 162_二分查找】山脉数组的峰顶索引 & 寻找峰值元素
算法·leetcode·职场和发展
东东的脑洞2 小时前
【面试突击】MySQL 查询优化核心面试知识点
mysql·面试·职场和发展
1024肥宅2 小时前
JS复杂去重一定要先排序吗?深度解析与性能对比
前端·javascript·面试
鱼鱼块3 小时前
二叉搜索树:让数据在有序中生长的智慧之树
javascript·数据结构·面试
努力学算法的蒟蒻3 小时前
day44(12.25)——leetcode面试经典150
面试·职场和发展
美团程序员4 小时前
软件测试面试题总结【含答案】
功能测试·测试工具·职场和发展
C雨后彩虹4 小时前
5G网络建设
java·数据结构·算法·华为·面试