netty 与 mina

10人阅读 评论(0) 收藏 举报
分类:

Netty是什么?为什么这么火?

Netty是目前最流行的由JBOSS提供的一个Java开源框架NIO框架,Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。

相比JDK原生NIO,Netty提供了相对十分简单易用的API,非常适合网络编程。Netty是完全基于NIO实现的,所以Netty是异步的。

作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。

Netty无疑是NIO的老大,它的健壮性、功能、性能、可定制性和可扩展性在同类框架都是首屈一指的。它已经得到成百上千的商业/商用项目验证,如Hadoop的RPC框架Avro、RocketMQ以及主流的分布式通信框架Dubbo等等。

为什么这么火,是有原因的。

Netty的优点可以总结如下

1、API使用简单,开发门槛低;

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

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

4、性能高,通过与其他业界主流的NIO框架对比,Netty的综合性能最优;

5、成熟、稳定,Netty修复了已经发现的所有JDK NIO BUG,业务开发人员不需要再为NIO的BUG而烦恼;

6、社区活跃,版本迭代周期短,发现的BUG可以被及时修复,同时,更多的新功能会加入;

7、经历了大规模的商业应用考验,质量得到验证。在互联网、大数据、网络游戏、企业应用、电信软件等众多行业得到成功商用,证明了它已经完全能够满足不同行业的商业应用了。

与Mina相比有什么优势?

1、都是Trustin Lee的作品,Netty更晚;

2、Mina将内核和一些特性的联系过于紧密,使得用户在不需要这些特性的时候无法脱离,相比下性能会有所下降,Netty解决了这个设计问题;

3、Netty的文档更清晰,很多Mina的特性在Netty里都有;

4、Netty更新周期更短,新版本的发布比较快;

5、它们的架构差别不大,Mina靠apache生存,而Netty靠jboss,和jboss的结合度非常高,Netty有对google protocal buf的支持,有更完整的ioc容器支持(spring,guice,jbossmc和osgi);

6、Netty比Mina使用起来更简单,Netty里你可以自定义的处理upstream events或/和downstream events,可以使用decoder和encoder来解码和编码发送内容;

7、Netty和Mina在处理UDP时有一些不同,Netty将UDP无连接的特性暴露出来;而Mina对UDP进行了高级层次的抽象,可以把UDP当成”面向连接”的协议,而要Netty做到这一点比较困难。

查看评论

Netty 基本使用,比Mina要稳定的多。

项目里有个聊天的功能,之前一直用mina,
  • BingShuShu
  • BingShuShu
  • 2014-10-14 12:18:24
  • 9267

netty vs mina netty和mina的区别

Netty和mian比较报告 一、数据测试报告 简述:1、启动服务器,等到客户端接入      2、客户端发送链接请求。当已经链接,记录当前时间并向服务端发送约50m数据,每次1kb.    ...
  • hjm4702192
  • hjm4702192
  • 2012-11-13 16:54:49
  • 2882

Mina和Netty的选择

Mina和Netty都是Java领域高性能和高可伸缩性网络应用程序的网络应用框架,在实际生产应用中都是不错的佼佼者。 Netty 是由JBOSS提供的一个java开源框架。Netty提供异步的、事件...
  • dodott
  • dodott
  • 2016-06-16 13:41:24
  • 14371

Mina、Netty的比较

Mina: Mina(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用...
  • yjh314
  • yjh314
  • 2014-11-23 23:10:36
  • 1229

为什么Netty这么火?与Mina相比有什么优势?

Netty是什么?为什么这么火? Netty是目前最流行的由JBOSS提供的一个Java开源框架NIO框架,Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络...
  • youanyyou
  • youanyyou
  • 2018-01-13 10:08:11
  • 649

Apache mina,Netty的起源和历史

总结:Apache mina 和Netty作者作为韩国一流学府计算机科学的本科毕业生,从毕业就开始开发Java网络框架。JDK1.4在2003年开始出现Java NIO. 从起先的Netty 到 Ap...
  • sunning9001
  • sunning9001
  • 2015-11-23 22:32:48
  • 4099

MINA2与Netty4比较分析

  • 2015年09月22日 16:41
  • 1.04MB
  • 下载

Netty、Mina、xSocket、Grizzly比较

问题:生活中工作中,会有人问我javaNIO框架里面 Netty Mina  xSocket Grizzly 等等哪个比较好?   在这里写一下自己的感受,也算是总结一下吧   在我的印象中。不管...
  • huodianyan
  • huodianyan
  • 2014-07-21 16:25:20
  • 2635

关于 mina netty activiemq RabbitMq nio 的比较 区别 应用

mina netty 是nio机制,对 java socket 的的封装,提供了心跳包等功能。 activiemq RabbitMq 是消息队列,可以用mina netty 实现消息队列,  需要起...
  • u013378306
  • u013378306
  • 2017-07-02 14:13:13
  • 760

Apache mina VS Netty

选自:apache  mina和netty作者 trustin     http://stackoverflow.com/questions/1637752/netty-vs-apache-mina ...
  • sunning9001
  • sunning9001
  • 2015-12-06 18:04:00
  • 686
    个人资料
    持之以恒
    等级:
    访问量: 1万+
    积分: 1133
    排名: 4万+
    文章存档
    最新评论