如何合理的学习Netty?(学习目录)
什么是Netty?
Netty是一款用于快速开发高性能的网络应用程序的Java框架。
概念及体系结构
- 了解阻塞和非阻塞的网络API及其对应的JDK接口。而Netty可以充分作为构建高度可伸缩的、异步的、事件驱动的网络编程应用的工具包。那么我们要先了解其基本构建块:Channel、回调、Future、事件及ChannelHandler。
- 引导(Bootstrap):在运行时组装和配置一个应用程序的所有组件的过程。
- 框架核心组件:Channel、EventLoop、ChannelHandler以及ChannelPipeline,并理解引导服务器和客户端之间的差异。
- 研究Netty的传输API的底层接口的层级关系以及它们所支持的传输类型。
- 数据处理API——ByteBuf(字节容器),相对于JDK的ByteBuffer的差异优劣,以及如何分配和访问ByteBuf所使用的内存。
- 负责调度应用程序的处理逻辑、并驱动数据和事件经过网络层的ChannelHandler和ChannelPipeline、或更高级的ChannelHandlerContext。
- Netty线程模型——interfaceEventLoop,理解Netty如何实现异步、事件驱动的网络编程模型。
- 如何优雅关闭应用程序并有序地释放所有的资源
- EmbeddedChannel一个特殊的Channel进行单元测试
编解码器
- 将一个非结构化的字节流转换为一个特定于协议的布局结构
- 研究各种用例(不同协议)的编解码器及ChannelHandler
网络协议
- 基于WebSocket实现Web服务器和客户端之间的双向通信
- 利用用户数据报协议(UDP)的广播能力的服务器和客户端应用程序。
如果此文对你有所帮助,欢迎关注个人技术公众号
相关推荐
fengshantao 2020-10-29
arctan0 2020-10-14
爱传文档 2020-07-28
gzx0 2020-07-05
fengshantao 2020-07-04
fengshantao 2020-07-02
jannal 2020-06-21
arctan0 2020-06-19
arctan0 2020-06-16
gzx0 2020-06-14
fengshantao 2020-06-13
gzx0 2020-06-12
arctan0 2020-06-11
fengshantao 2020-06-11
mbcsdn 2020-05-19
arctan0 2020-05-16
爱传文档 2020-05-08
爱传文档 2020-05-04