每日后端面试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.构建管理(清理、编译、打包等)

相关推荐
奔跑的蜗牛ing4 小时前
CentOS Nginx 安装与静态文件服务器配置指南
前端·面试·架构
KaifuZeng7 小时前
通信与接口协议面试五、RS422
嵌入式硬件·面试·通信与接口
Frostnova丶8 小时前
(12)LeetCode 76. 最小覆盖子串
算法·leetcode·职场和发展
旧曲重听19 小时前
为什么现在 RAG 越少越少提及了
数据库·程序人生·职场和发展·agent
SamDeepThinking9 小时前
组合还是继承?我在项目里主要看这两个判断
java·后端·面试
wear工程师9 小时前
setState 到底是不是异步的?这题从 React 16 问到 18,标准答案早就变了
react.js·面试
凯瑟琳.奥古斯特10 小时前
力扣1013三等分解法与C++实现
开发语言·c++·算法·leetcode·职场和发展
凯瑟琳.奥古斯特11 小时前
力扣1012数位DP解法详解
开发语言·c++·算法·leetcode·职场和发展
SamDeepThinking12 小时前
为什么很多人学了Java,还是没真正理解类和对象?
java·后端·面试
阿新聊ai12 小时前
Claude Code 为什么总不懂你的项目?缺一张「项目地图」
前端·后端·面试