Netty入门(一)------为什么使用Netty

  1. Netty简介

    Netty 是一个基于 JAVA NIO 类库的异步通信框架,它的架构特点是:异步非阻塞、基于事件驱动、高性能、高可靠性和高可定制性。换句话说,Netty是一个NIO框架,使用它可以简单快速地开发网络应用程序,比如客户端和服务端的协议。 Netty 的内部实现时很复杂的,但是 Netty 提供了简单易用的 api 从网络处理代码中解耦业务逻辑。简单点说就是Netty提供了一个简单,间接的方法来操作网络之间的通讯。

  2. Netty 的优点

    API 使用简单,开发门槛低;
    功能强大,预置了多种编解码功能,支持多种主流协议;
    定制能力强,可以通过 ChannelHandler 对通信框架进行灵活的扩展;
    性能高,通过与其它业界主流的 NIO 框架对比,Netty 的综合性能最优;
    社区活跃,版本迭代周期短,发现的 BUG 可以被及时修复,同时,更多的新功能会被加入;
    经历了大规模的商业应用考验,质量得到验证。在互联网、大数据、网络游戏、企业应用、电信软件等众多行业得到成功商用,证明了它完全满足不同行业的商用标准;
    切换IO和NIO,因为IO和NIO的API完全不同,相互切换非常困难;
    稳定,修复了NIO出现的所有Bug。

  3. 类似的框架对比

    与Mina相比有什么优势?
    都是Trustin Lee的作品,Netty更晚;
    Mina将内核和一些特性的联系过于紧密,使得用户在不需要这些特性的时候无法脱离,相比下性能会有所下降,Netty解决了这个设计问题;
    Netty的文档更清晰,很多Mina的特性在Netty里都有;
    Netty更新周期更短,新版本的发布比较快;
    它们的架构差别不大,Mina靠apache生存,而Netty靠jboss,和jboss的结合度非常高,Netty有对google protocal buf的支持,有更完整的ioc容器支持(spring,guice,jbossmc和osgi);
    Netty比Mina使用起来更简单,Netty里你可以自定义的处理upstream events 或/和 downstream events,可以使用decoder和encoder来解码和编码发送内容;
    Netty和Mina在处理UDP时有一些不同,Netty将UDP无连接的特性暴露出来;而Mina对UDP进行了高级层次的抽象,可以把UDP当成”面向连接”的协议,而要Netty做到这一点比较困难。

    Netty入门(二)——-HelloWord

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值