摘要:TCP 粘包/拆包 TCP是以流的方式来处理数据, 拆包:一个完整的数据包可能会被TCP拆分成多个包进行发送。 粘包:TCP 可能把多个小的包粘成一个大的数据包。 引入依赖包: <dependency> <groupId>io.netty</groupId> <artifactId>netty-al
阅读全文
摘要:Netty源码实践 学习netty,可以从netty源码的 netty-example 模块开始。 netty-example 有一个例子 echo,非常适合入门学习。 这里稍微改造一下,用作示例学习。 引入依赖包: <dependency> <groupId>io.netty</groupId>
阅读全文
摘要:netty架构图 ServerBootstrap 、 Bootstrap ServerBootstrap :服务器的引导类,可以绑定服务器和端口,配置 Channel、ChannelHandler等。 Bootstrap:客户端的引导类。可以开启客户端,连接服务端的端口,配置 Channel、Cha
阅读全文
摘要:Netty源码编译 想了解Netty源码,最好先从 netty-example 开始,多跑几个 example,了解Netty的实际应用。 编译 netty-example 会出现很多乱七八糟的问题,根本原因是因为缺少 io.netty.util.collection 包。 解决方法 1.先 ins
阅读全文
摘要:第一章、Netty--异步和事件驱动 Netty包含网络编程、多线程处理和并发。 NIO NIO 代表非阻塞 I/O(Non-blocking I/O)。 Netty 的核心组件 Netty 的主要构件: Channel; 回调; Future; 事件和 ChannelHandler。 Channe
阅读全文