Netty是什么?
JBoss做的一个Jar包, 为了快速开发高性能、高可靠的网络服务器和客户端, 提供异步的事件驱动的网络应用框架和工具。
Netty可以让你定制编解码协议
,实现自己特定协议的服务器。
Netty是基于Java NIO技术封装的一套框架(更高层次的抽象)。
- NIO全称NoneBlocking IO, 非阻塞IO。使用事件机制。
- Accept连接和读写可使用一个线程处理也可以分开线程池处理(根据实际情况进行组装)
- 内置了常用的编解码器;
- 行编解码器[一行一个请求]
- 前缀长度编解码器[前N个字节定义请求的字节长度]
- 可重放解码器[记录半包消息的状态]
- HTTP编解码器
- WebSocket消息解码器
- 一系列的生命周期回调接口
- 同时管理多个端口
- 可以处理TCP和UDP的socket