![](https://img-blog.csdnimg.cn/20200501220511777.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Netty
文章平均质量分 72
一款高性能的NIO客户端-服务端的通讯框架
天瑕
你今天的日积月累, 早晚会成为别人的望尘莫及;
展开
-
较真儿学源码系列-Netty核心流程源码分析
因为NIO的类库和API比较繁琐,使用起来比较麻烦,开发的工作量和难度都非常大,例如客户端面临断连重连、网络闪断、心跳处理、半包读写、网络拥塞和异常流的处理等等。所以Netty对Java自带的NIO API进行了良好的封装,解决了上述问题。且Netty拥有高性能、吞吐量更高、延迟更低、减少资源消耗、零拷贝直接内存等优点。所以Netty可以很方便地实现出一个网络通信系统,比如聊天服务器或弹幕系统(我曾经使用Netty实现过一个简易聊天室的demo,感兴趣的话可以查看《Netty实现简易聊天室的功能》)。原创 2020-08-14 21:19:07 · 2412 阅读 · 1 评论 -
Netty实现简易聊天室的功能
使用Netty来实现一个聊天室是很容易的,当有客户端连接服务端的时候,在服务端的channelActive方法里面即可感应到。这里的解决方案是发送每条数据的时候,将数据的长度一并发送,比如可以选择每条数据的前4位是数据的长度,应用层处理时可以根据长度来判断每条数据的开始和结束。同理,channelInactive是该客户端断开服务端时会回调的方法,在里面给其他客户端发一条“下线了”的信息即可。如果数据长度不够length,就等待下一次数据过来,取数据的时候也只取length长度的数据。原创 2020-05-05 22:02:03 · 2462 阅读 · 0 评论 -
Netty实现心跳检测机制
Netty实现心跳检测机制原创 2020-05-05 17:11:15 · 1272 阅读 · 0 评论 -
BIO & NIO & AIO
BIO & NIO & AIO原创 2020-05-02 18:09:27 · 551 阅读 · 0 评论