线程模型基本介绍

  1. 线程模型基本介绍
    1. 传统阻塞 I/O 服务模型

线程模型基本介绍

  1. 不同的线程模式,对程序的性能有很大影响,为了搞清Netty 线程模式,我们来系统的讲解下 各个线程模式, 最后看看Netty 线程模型有什么优越性.

  2. 目前存在的线程模型有:

    • 传统阻塞 I/O 服务模型
    • Reactor 模式
  3. 根据 Reactor 的数量和处理资源池线程的数量不同,有 3 种典型的实现

    • 单 Reactor 单线程;
    • 单 Reactor 多线程;
    • 主从 Reactor 多线程
  4. Netty 线程模式

    (Netty 主要基于主从 Reactor 多线程模型做了一定的改进,其中主从 Reactor 多线程模型有多个 Reactor)

传统阻塞 I/O 服务模型

工作原理图

黄色的框表示对象, 蓝色的框表示线程
白色的框表示方法(API)

模型特点:

  • 采用阻塞IO模式获取输入的数据
  • 每个连接都需要独立的线程完成数据的输入,业务处理, 数据返回

存在问题:

  • 当并发数很大,就会创建大量的线程,占用很大系统资源

  • 连接创建后,如果当前线程暂时没有数据可读,该线程会阻塞在read 操作,造成线程资源浪费


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达,邮件至 708801794@qq.com

文章标题:线程模型基本介绍

文章字数:319

本文作者:梅罢葛

发布时间:2020-04-18, 13:09:51

最后更新:2020-04-26, 23:34:21

原始链接:https://qiurungeng.github.io/2020/04/18/%E7%BA%BF%E7%A8%8B%E6%A8%A1%E5%9E%8B%E5%9F%BA%E6%9C%AC%E4%BB%8B%E7%BB%8D/
目录
×

喜欢就点赞,疼爱就打赏