目录
Netty概述
Netty是一个基于Java NIO的高性能网络框架,广泛应用于需要高效处理大量并发连接的场景中。它提供了异步和事件驱动的网络编程模型,支持 TCP 和 UDP 协议,并且内置了多种传输方式,如NIO、Epoll等。Netty可以实现自己的HTTP服务器,FTP服务器,UDP服务器,RPC服务器,WebSocket服务器,Redis的Proxy服务器,MySQL的Proxy服务器等等。
传统的HTTP服务器的流程
- 创建一个ServerSocket,监听并绑定一个端口
- 一系列客户端来请求这个端口
- 服务器使用Accept,获得一个来自客户端的Socket连接对象
- 启动一个新线程处理连接
- 读Socket,得到字节流
- 解码协议,得到Http请求对象
- 处理Http请求,得到一个结果,封装成一个HttpResponse对象
- 编码协议,将结果序列化字节流
- 写Socket,将字节流发给客户端
- 继续循环步骤3
HTTP服务器之所以称为HTTP服务器,是因为
Netty是一个Java框架,用于快速开发高性能、高可靠性网络服务器和客户端程序。它封装了网络编程的复杂性,提供易于使用的API。Netty基于Java NIO,利用其非阻塞IO特性,通过事件驱动模型和Channel、ChannelHandler、Future等核心组件,实现了灵活的并发模型和多种协议支持,包括TCP、UDP。框架内置多种编解码器,简化协议处理,适用于构建HTTP、WebSocket等服务器。
订阅专栏 解锁全文
779

被折叠的 条评论
为什么被折叠?



