为什么不用NIO而是Netty

Netty做的更多:

  • 支持常用应用层协议;
  • 解决传输问题:粘包和半包现象;
  • 支持流量整形;
  • 完善的断连、idle等异常处理;
  • API更友好更强大;
  • 隔离变化、屏蔽细节;

规避了NIO的bug:

  • NIO的epoll bug:异常唤醒空转导致CPU 100%;
  • IP_TOS参数使用时抛出异常;

什么是经典的三种IO模式

经典的模式:

  1. BIO(阻塞);
  2. NIO(非阻塞);
  3. AIO(异步);

NIO一定优于BIO吗

BIO的特点:

  • BIO代码简单;
  • 连接数少,并发度低,BIO性能不输NIO;

什么是Reactor以及三种版本

一共三种模式:

  1. Reactor单线程;
    Netty入门P0

  2. Reactor多线程模式;
    Netty入门P0

  3. 主从Reactor多线程模式;
    Netty入门P0
    Reactor是一种开发模式,流程如下:

  4. 注册感兴趣的事件;

  5. 扫描是否有感兴趣的事件发生;

  6. 事件发生后作出相应的处理;

在Netty中使用Reactor模式:

Netty入门P0

相关文章:

  • 2022-01-05
猜你喜欢
  • 2021-08-14
  • 2021-11-01
相关资源
相似解决方案