分布式之Netty介绍与实战(三)--Netty线程模型解析

目录

分布式之Netty介绍与实战(一)–Java IO与NIO

分布式之Netty介绍与实战(二)–Netty编程实践

分布式之Netty介绍与实战(三)–Netty线程模型解析

分布式之Netty介绍与实战(四)–Netty编解码编程实战


Reactor模式及其与Netty的对应关系

Reactor模式

  • Douglas C. Schmidt 1995年提出
    An Object Behavioral Pattern for Demultiplexing and Dispatching Handles for Synchronous Events
  • Scalable IO in Java - Doug Lea
    http://gee.cs.oswego.edu/dl/cpjslides/nio.pdf
    基于Java IO对Reactor模式进行阐述
  • NIO网络框架的典型模式
  • Mina、Netty、Cindy都是此模式的实现

Reactor模式 - Douglas

在这里插入图片描述

Reactor模式 - Doug Lea

  • 三种形式
    • 单线程Reactor
    • 多线程Reactor
    • Multiple Reactor

Reactor模式 - Basic

在这里插入图片描述

Reactor模式 – MultiThread Reactor

在这里插入图片描述

Reactor模式 – Multiple Reactors

在这里插入图片描述

Reactor模式 – 其他形式-主从Reactor

在这里插入图片描述

Netty与Reactor模式

  • Netty实现了哪些形式的Reactor模式了?
    • 单线程Reactor?
    • 多线程Reactor?
    • Multiple Reactor?
    • 主从Reactor?
      在这里插入图片描述

Netty EventLoop源码解析

在这里插入图片描述

EventExecutor视图

  1. EventExecutorGroup是不干什么事情的,当收到一个请求后,他就调用next()获得一个它里面的EventExcutor,再调用executor的方法;
  2. EventExecutorGroup里面有一个EventExcutor数组,保存多个EventExcutor;
  3. next():EventExecutorChooser.choose()定义选择EventExcutor的策略

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
EventLoop整体结构

  • NioEventLoop创建分析
  • NioEventLoop启动流程分析
  • NioEventLoop执行流程分析

在这里插入图片描述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值