Netty
2021-04-26 08:35:56 0 举报
Netty 的基础解析
作者其他创作
大纲/内容
read
headChannelHandler
网卡
CPU
Client
2.sendfile,通过系统调用内核空间直接拷贝
主线程组建议1主多从
Server
主线程连接构成通道
data
netty 心跳检测机制
Encode编码
buffer内核缓冲区
CPU拷贝
可能导致服务器收到数据为乱码
D1_1
byte
Buffer 缓冲区
data 长度
从线程负责读写
socket buffer套接字缓冲区
decode
D1_2
处理 data
select(连接后的操作--读写)
in
1.内存关系映射减少一次cpu拷贝
可以有多个 Handler,串行
主线程负责客户端与服务器之间的连接
Handler
Tail
连接服务器
物理 隔离
DMA
半_data_2
select(只负责连接)
kernel内核
buffer应用缓冲区
出站out
D2
netty 零拷贝
send
达到一定时间收不到小数据包,认定为断开连接,则将通道删除
JVM
Decode解码
操作
根据data_长度
DMA拷贝——直接内存访问
acceptor
out
netty 编解码
半_data_1
Thread Pool
netty 拆包粘包
零拷贝
D2_1
服务器回传数据到客户端
D1
Encode
从线程组
D2_2
server
netty 底层NIO模型
通过内存映射获取信息
硬盘
定时发送小数据包
客户端传数据到服务器
0 条评论
回复 删除
下一页