NIO

本文深入探讨了Netty的NIO机制,从高性能的副作用、事件处理机制到Reactor模型,详细介绍了Netty的运行原理和关键对象如Boss Group、Worker Group、ChannelPipeline。同时,文章还涉及到了Netty的网络程序优化,包括TCP优化、连接优化和API网关的重要性,以及具体的解码器使用策略。
摘要由CSDN通过智能技术生成

什么是高性能

高并发用户 系统外部 用户的引用角度
高吞吐量 系统内部角度 TPS
低延迟

高并发用户 业务指标
高吞吐量 低延迟 技术指标

延迟和响应时间的区别
在这里插入图片描述
延迟针对系统
响应针对客户

高性能的副作用

系统复杂度 x10以上
建设与维护成本+++
故障和BUG导致的破坏性x10以上

应对策略

1 容量
当高并发来的时候服务器能否抗的住,吞吐量是否够
2 爆炸半径
当修改了代码,产生bug,确定影响的模块范围
3 工程方面积累与改进

事件处理机制

在这里插入图片描述
事件 进入队列排号,通过分发器分发,Channel 是一个接收事件的管道, 在管道中由事件处理器来选择对应模块进行处理

从事件处理机制到 Reactor 模型

在这里插入图片描述
上图中 Client发起请求,ServiceHandler 专门用来处理用户请求 ,然后由 ServiceHandler 派遣给其他处理线程

Reactor 模式首先是事件驱动的,有一个或者多个并发输入源,有一个 Service Handler 和多个 EventHandlers

这个 Service Handler 会同步的将输入的请求多路复用的分发给相应的 Event Handler

从 Reactor 模型到 Netty NIO

在这里插入图片描述
这个线程模型和 Reactor 模型的区别在于 Netty NIO 是多级的,请求进来,Reactor 接收,交由线程池处理,在线程池中进行解码(decode) 处理(compute) 编码(encode)【从线程池开始即是对数据处理部分,上面的部分就是接收请求,处理socket连接部分】

Netty NIO 建立两个概念
1 Boss Group
2 Worker Group
前者是接收任务,维护所有

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值