NIO通信了解

1.数据包序列化后通过字节流管道 out(输出)tcp/ip协议

2.高并发情况下,阻塞式的通信业务模型(每一个客服端的请求都会重启一个新的线程去响应),将极大地占用线程资源,会增大创建和销毁的资源消耗

导致服务器响应缓慢,甚至任务排队过久、超时、丢失      BIO

二:NIO的通信模式:

NIO:一种非阻塞式通信模式,线程在执行这个通信业务过程中,如果有一个环节没有准备好,那么线程可以去执行其他任务,线程占用的情况大幅度释放。

  相对于独有组成部分:

1. Channel  NIO 通信当中启用的一种高速通道,这个通道能满足业务来回,减少50%创建管道资源,传输速度大大加快(封装socker)

2.Buffer(缓冲区) 增大了通信的吞吐量的港口

3.Selector(多用服用注册器)  注册通信事件地方,多路复用注册器 Netty 是在nio基础拓展 事件驱动模型的通信框架

4.SelectKey Socket 事件类型描述组件 Selectkey包含了信息包中所属哪个客户端的信息(Channel信息),还包含了这个通信的具体事件类型

一个线程可以维护Selector达到维护对个客户端通信业务

总结:1.NIO是基于事件驱动模型,因此占用服务器资源大大减少

2.缓存区的出现配上高速通道 大大加速传输的效率

3.一个线程维护多个客户端处理模型(客户端的状态都是维护在Select 一个线程去监听Selector 等于维护了多个客户端)

4.SelectKey  Channel 里面的信息 ,信息包含这个客户端的信息和客户端处于什么事件类型

Netty 缓存区改善:

线程池维护多个Selector

引进Reactor线程模型 通过启动参数确定最终适合系统的运行模式 辅助启动类的构建使用

缓冲区读写模式切换不需要手动了

 

转载于:https://www.cnblogs.com/yxb-ylp-520/p/7732768.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值