基础
# 基础
# classpath 和 classpath* 区别
classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找 classpath*的使用:当项目中有多个classpath路径,并同时加载多个classpath路径下(此种情况多数不会遇到)的文件,就发挥了作用,如果不加,则表示仅仅加载第一个classpath路径。
# UDP
- 主要用于语音,视频,直播等流媒体,可以允许丢失数据,但是速度会快很多
# TCP
- 主要用于需要稳定,安全的传输,比如网络会话,文件传输,数据库等,可以保证数据不丢失
# 三次握手和四次挥手
# 三次握手
- 第一次:客户端向服务端发送一个请求,并携带SYN=1,seq=x
- 第二次:服务端收到请求后,向客户端发送一个响应,并携带应答号ACK=1,应答位ack=y,同步号SYN=1,同步位seq=x+1
- 第三次:客户端收到响应后,向服务端发送一个确认应答,ACK=1,ack=y+1
# 四次挥手
- 第一次:客户端向服务端发送一个请求,并携带结束号FIN=1,同步位seq=u
- 第二次:服务端收到请求后,向客户端发送一个响应,并携带应答号ACK=1,应答位ack=u+1
- 第三次:服务端向客户端发送一个请求,并携带结束号FIN=1,同步位seq=w
- 第四次:客户端收到请求后,向服务端发送一个响应,并携带应答号ACK=1,应答位ack=w+1
# BIO与NIO
# BIO
- 同步阻塞IO,在读写数据时,线程都会被阻塞,直到有数据可读或可写
- 缺点:线程阻塞,效率低
# NIO
- 同步非阻塞IO,在读写数据时,线程不会阻塞,当没有数据可读或可写时,会返回一个空值
- 缺点:需要轮询,效率低
# 多路复用
# select
# poll
# epoll
编辑 (opens new window)
上次更新: 2024/11/05, 15:11:10