Netty线程模型(Netty的高性能原理探秘)

本文探讨了Netty的NIO线程模型,解释了bossGroup如何分配任务到workerGroup,揭示了Netty在高并发下保持高性能的原因。Netty通过分离TCP连接接收与读写操作,避免了单线程模型的问题,提升了系统可靠性。
摘要由CSDN通过智能技术生成

缘起

日前在看netty的工作原理,对netty的线程模型很是不能理解,查阅了诸多资料,终于有了一些眉目。特此记录,以备查阅。

阅读对象

netty中的NIO编程模型是基于java Nio的封装,所以需要读者对java NIO有一定的了解,篇幅所限,本文不会对NIO再做详述,有需要的读者可以查看JAVA BIO,NIO,AIO详解(附代码实现)以及Netty的简介

Netty的NIO线程模型

说netty的线程模型之前,先说传统NIO的使用方式中的关键代码
在这里插入图片描述
可以看到是当前线程获得了客户端的连接之后再重新把channel注册到selector上,同时把事件注册为读,这样就可以开始读消息了。也就是说获取tcp连接和读取消息都是在同一个线程里面处理的。那么这种方式有什么问题呢?对于一些小流量应用场景,可以使用单线程模型。但是对于高负载、大并发的应用场景却不合适,主要原因如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值