Netty 介绍
Netty 介绍
- Netty 是一个异步的、基于事件驱动的网络应用框架、用以快速开发高性能、高可靠的网络 I/O 程序。
- Netty 主要针对在 TCP 协议下,面向 Clients 端的高并发应用,或者 Peer-to-Peer 场景下的大量数据持续传输的应用
- Netty 本质是一个NIO 框架,适用于服务器通讯相关的多种应用场景
I/O 模型
java BIO : 同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销(传统 I/O)。
BIO 流程:
- 服务端启动一个 ServerSocket
- 客户端启动 Socket 对服务器进行通信,默认情况下服务器需要对每个客户 建立一个线程与之通信
- 客户端发出请求后,先咨询服务器是否有线程响应,如果没有则会等待,或者被拒绝
有线程响应,如果没有则会等待,或者被拒绝 - 如果有响应,客户端线程会等待请求结束,在继续执行。