[博学谷学习记录]超强总结,用心分享|关于Netty特点

        Netty 作为异步事件驱动的网络,高性能之处主要来自于其 I/O 模型线程处理模型,前者决定如何收发数据,后者决定如何处理数据。

I/O模型:

Netty IO 线程 NioEventLoop 由于聚合了多路复用器 Selector ,可以同时并发处理成百上千个客户 端连接。当线程从某客户端 Socket 通道进行读写数据时,若没有数据可用时,该线程可以进行其他任 务。线程通常将非阻塞 IO 的空闲时间用于在其他通道上执行 IO 操作,所以单独的线程可以管理多个输 入和输出通道。由于读写操作都是非阻塞的,这就可以充分提升 IO 线程的运行效率,避免由于频繁 I/O 阻塞导致的线程挂起。一个 I/O 线程可以并发处理 N 个客户端连接和读写操作,这从根本上解决了传统 同步阻塞 I/O 一连接一线程模型,架构的性能、弹性伸缩能力和可靠性都得到了极大的提升。
线程处理模型:

Netty 主要基于主从 Reactors 多线程模型做了一定的修改,其中主从 Reactor 多线程模型有多个
Reactor
1 MainReactor 负责客户端的连接请求,并将请求转交给 SubReactor
2 SubReactor 负责相应通道的 IO 读写请求;
3 )非 IO 请求(具体逻辑处理)的任务则会直接写入队列,等待 worker threads 进行处理。
# 博学谷IT 技术支持
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值