• 异步和事件驱动_netty学习笔记(1)-20210330


     Netty 核心知识点的思维导图

    异步和事件驱动

    在本质上,一个系统是异步和“事件驱动”将会表现出一个特定的,对我们来说,有价值的 行为:它可以响应在任何时间以任何顺序发生的事件

    JAVA NIO

    Blocking I/O

     给每个连接创建一个线程,有些连接是空闲的!显然,这种方法的可扩展性将是受限于可以在 JVM 中创建的线程数。当你的应用中连接数比较少,这个方案还是可以接受。当并发连接超过10000 时,context-switching(上下文切换)开销将是明显的。此外,每个线程都有一个默认的堆栈内存分配了 128K 和 1M 之间的空间。考虑到整体的内存和操作系统需要处理 100000 个或更多的并发连接资源,这似乎是一个不理想的解决方案。

    SELECTOR

    Nonblocking I/O

     

    Selector 最终决定哪一组注册的 socket 准备执行 I/O。正如我们之前所解释的那样,这 I/O 操作设置为非阻塞模式。通过通知,一个线程可以同时处理多个并发连接。

  • 相关阅读:
    HDU——T 3342 Legal or Not
    Web框架本质
    February 5 2017 Week 6 Sunday
    February 4 2017 Week 5 Saturday
    February 3 2017 Week 5 Friday
    February 2 2017 Week 5 Thursday
    February 1 2017 Week 5 Wednesday
    January 31 2017 Week 5 Tuesday
    January 30 2017 Week 5 Monday
    January 29 2017 Week 5 Sunday
  • 原文地址:https://www.cnblogs.com/sfnz/p/14596543.html
Copyright © 2020-2023  润新知