EventLoop组件分析
EventLoopGroup是一组EventLoop的抽象,含有多个EventLoop,可以注册channel,用于在事件循环中进行选择,netty为了更好地利用多核cpu资源,一般会有多个EventLoop同时工作,每个EventLoop维护一个Selector实例,EventLoopGroup提供了next方法,来从组内按照一定的规则获取EventLoop来处理任务
1 | // bossGroup用于接收Client端连接,会将请求交给workerGroup |
EventLoopGroup是一组EventLoop的抽象,含有多个EventLoop,可以注册channel,用于在事件循环中进行选择,netty为了更好地利用多核cpu资源,一般会有多个EventLoop同时工作,每个EventLoop维护一个Selector实例,EventLoopGroup提供了next方法,来从组内按照一定的规则获取EventLoop来处理任务
1 | // bossGroup用于接收Client端连接,会将请求交给workerGroup |
作用是配置整个Netty程序,串联各个组件,Netty中BootStrap类是客户端的启动引导类,ServerBootStrap是服务端的启动引导类
1 | // 服务端设置EventLoopGroup |
1 | public class Server { |
UML(统一建模语言)是一个通用的可视化建模语言,用于对软件进行描述,可视化处理、构造和建立软件系统制品的文档,主要有类图、用例图、构件图、部署图、状态机图、活动图、顺序图、协作图
以下来简单地描述一个各种图,大致分为两个类,结构图和行为图
结构图属于静态图
类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联,描述的是一组类、接口、协作和它们之间的关系。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。对系统词汇、简单协作、逻辑数据库模式建模有帮助。
类图中类用矩形来表示,属性和操作分别列在分格中,关系用类框之间的连线来表示,不同的关系用连线上和连线端头处的修饰符来区别
进程就是执行中的程序,是系统进行资源分配和调度的基本单位,其使得操作系统资源利用率大幅提升。由程序块、进程控制块(PCB)和数据块三部分组成。
进程控制块是用于描述和控制进程运行的通用数据结构,来记录进程当前状态和控制进程运行的全部信息,使得进程是能够独立运行的基本单位。是常驻内存的,进程控制块的组成