Netty入门

一、什么是Netty?

        Netty封装了JDK的NIO,是一个异步事件驱动的网络应用框架,用于快速开发可维护的高性能服务器和客户端。

二、Netty的优势

        1、Api使用简单

        2、功能强大,预置了多种编解码功能,支持主流协议;

        3、定制能力强,可通过ChannelHandler对通信框架进行灵活的扩展;

        4、性能高,与其它主流NIO框架对比,综合性能最优;

        5、成熟稳定,Netty修复了已经发现的所有JDK NIO bug;

        6、社区活跃,版本迭代周期短;

        7、经历了大规模商用;

三、Netty核心组件介绍

1、eventloop:Netty Reactor 线程模型的核心处理引擎;(用于处理io事件的单线程执行器)

2、EventLoopGroup: 就是一组 EventLoop ,它主要是来维护和管理 EventLoop,一般我们是不会直接使用 EventLoop 的,而是通过 EventLoopGroup 来使用它。

3、Channel :客户端与服务端建立一个连接就会创建一个channel,近似于socket;

三者之间的关系

4、channelhandler:channer事件处理器

5、channelpipeline:提供channelhandler链的容器,并蒂尼用于在该链上传播入站和出站事件流的API(每个channel都有一个对应的channelpopeline);使用双向链表存储handler;

6、channelhandlerContext:类似于linklist,主要将handle组装成一个链表;

事件传播的过程中药考虑到几种写操作所对应的流程,ctx所对应的写操作性能最高,另外两种都会经过所有时间流转才会结束,ctx的写操作只经过改handle处理(具体看业务场景是否需要经过所有时间流程);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值