大厂面试竟如此卷,Netty中有哪些核心组件?

2022-08-22 14:51:16 浏览数 (1)

最近又有粉丝问我这样一个问题,说Netty中最核心的组件有哪些?它们都起什么作用?今天,给大家详细聊一聊

1、组件分层

我把Netty的核心组件分为三层,分别是网络通信层、事件调度层和服务编排层。

2、网络通信层

在网络通信层有三个核心组件:Bootstrap、ServerBootStrap、Channel

Bootstrap:负责客户端启动并用来链接远程Netty Server;

ServerBootStrap:负责服务端监听,用来监听指定端口;

Channel:相当于完成网络通信的载体。

3、事件调度层

事件调度器有两个核心组件:EventLoopGroup与EventLoop

EventLoopGroup:本质上是一个线程池,主要负责接收I/O请求,并分配线程执行处理请求。

EventLoop:相当于线程池中的线程

4、服务编排层

在服务编排层有三个核心组件ChannelPipeline、ChannelHandler、ChannelHandlerContext

ChannelPipeline:负责将多个ChannelHandler链接在一起

ChannelHandler:针对I/O的数据处理器,数据接收后,通过指定的Handler进行处理。

ChannelHandlerContext:用来保存ChannelHandler的上下文信息

以上就是我对Netty核心组件的理解。

0 人点赞