Netty
Netty是 一个异步事件驱动的网络应用程序框架,
用于快速开发可维护的高性能协议服务器和客户端。
知青先生
技术的革新,代表生活工作的方式随之改变
展开
-
netty5.0(单、多)客户端
什么是粘包/拆包 一个完整的业务可能会被TCP拆分成多个包进行发送,也有可能把多个小的包封装成一个大的数据包发送,这个就是TCP的拆包和封包问题。 粘包/拆包问题一般的处理方式有四种: 数据段定长处理,位数不足的空位补齐。 消息头+消息体,消息头中一般会包含消息体的长度,消息类型等信息,消息体为实际数据体。 特殊字符(如:回车符)作为消息数据的结尾,以实现消息数据的分段。 复杂的应用层协议,这种...原创 2020-01-17 20:53:51 · 412 阅读 · 0 评论 -
NIO编程
什么是NIO? Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始),Java NIO提供了与标准IO不同的IO工作方式。 Java NIO: Channels and Buffers(通道和缓冲区) 标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中...原创 2020-01-15 23:13:51 · 123 阅读 · 0 评论 -
NIO同步阻塞和非同步阻塞---过度到netty(一个异步事件驱动的网络应用程序框架)
BIO与NIO IO为同步阻塞形式,NIO为同步非阻塞形式,NIO并没有实现异步,在JDK1.7后升级NIO库包,支持异步非阻塞 同学模型NIO2.0(AIO) BIO:同步阻塞式IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。 NIO:同步非阻塞式IO,服务器实现模式为一个...原创 2020-01-16 20:11:18 · 423 阅读 · 1 评论