Netty线程模型

1.Netty简介

Netty是一个高性能、高可扩展性的异步事件驱动的网络应用程序框架,它极大地简化了TCP和UDP客户端和服务器开发等网络编程。

Netty重要的四个内容:

  • Reactor线程模型:一种高性能的多线程程序设计思路。
  • Netty中自己定义的Channel概念:增强版的通道概念。
  • ChannelPipeline职责链设计模式:事件处理机制。
  • 内存管理:增强的ByteBuffer缓冲区。

2.Netty整体结构图

Netty线程模型

图片来自官网,可以看出包含三大块:

  • 支持Socket等多种传输方式
  • 提供了多种协议的编解码实现
  • 核心设计包含事件处理模型、API的使用、ByteBuffer的增强

3.Netty线程模型

为了让NIO的处理能更好地利用多线程特性,Netty实现了Reactor线程模型。Reactor模型中有四个核心概念:

  • Resources资源(请求/任务)
  • Synchronous Event Demultiplexer同步事件复用器
  • Dispatcher分配器
  • Request Handler请求处理器

Netty线程模型

4.EventLoopGroup初始化过程

Netty线程模型

后续学到的,我再继续补充!