![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Netty
文章平均质量分 67
不负韶华@
java后端开发
展开
-
粘包拆包,Netty源码解析
粘包和拆包简介1.TCP网络编程中当我们读取或者发送消息的时候,都需要考虑TCP底层的粘包/拆包机制,这种情况无法避免。2.TCP是个“流”协议,就是没有界限的一串数据。TCP底层并不了解上层业务数据的具体含义, 它会根据TCP缓冲区的实际情况进行包的划分,所以在业务上认为,一个完整的包可能会被TCP拆分 成多个包进行发送,也有可能把多个小的包封装成一个大的数据包发送,这就是所谓的TCP粘包和拆包问题。3.粘包:可以通俗的理解为在缓冲区(无论发送数据还是接收数据我们都要经过操作系统的缓冲区)产原创 2021-06-25 17:48:30 · 140 阅读 · 0 评论 -
Netty核心APi,Reactor 线程模型,Netty线程模型,编解码器
Netty介绍1.Netty的作用就是为了简化NIO的开发,并且做了额外的扩展,如:断连重连、网络闪断、半包读写、失败缓存、网络拥塞和异常流的处理。2.解决JDK NIO的Bug:Epoll Bug,它会导致Selector空轮询,最终导致CPU100%。直到 JDK 1.7版本该问题仍旧存在,没有被根本解决。3.Netty 的强大之处:零拷贝、可拓展事件模型;支持 TCP、UDP、HTTP、WebSocket 等协议; 提供安全传输、压缩、大文件传输、编解码支持等等。4.提供阻塞和非阻塞原创 2021-06-24 21:24:34 · 138 阅读 · 0 评论