Mina和Jetty,谁先谁后?

这两个都是有Trustin Lee参与的框架,而且功能类似,只是Mina当前Github活跃度不高,Netty即将进入5.0版本,但是仍然要说一下,Mina出现是为了改进Netty 2.0版本的缺点。

因此,Mina出现在Netty之后。

有人想说Netty比Mina好,甚至以Netty是Mina的升级版为由来强调,这儿记录一下:

http://mina.apache.org/mina-project/road-map.html

这是Trustin Lee叙说的Mina创意之初。

纯属无聊,记录一下:

Genesis of MINA

by Trustin Lee

In June 2004, I released a network application framework, 'Netty2'. It was the first network application framework that provides event-based architecture in Java community. It attracted network application programmers because of its simplicity and ease of use. As the Netty2 community matured, its problems also arose. Netty2 didn't work fine with text protocols and had a critical architectural flaw that prevents users from using it for applications with many concurrent clients.

Quite a large amount of information was collected about what users like about Netty2 and what improvements they want from it for 6 months. It was clear they like its ease of use and unit-testability. They wanted support for UDP/IP and text protocols. I had to invent a cleaner, more flexible, and more extensible API so that it is easy to learn yet full-featured.

Meanwhile around 2003 at Apache Directory, Alex Karasulu was wrestling with a network application framework he developed based on the [Matt Welsh's SEDA (Staged Event Driven Architecture)|http://www.eecs.harvard.edu/~mdw/proj/seda/]. After several iterations Alex realized it was very difficult to manage, and started to research other network application frameworks looking for a replacement. He wanted something for Java that would scale like SEDA yet was simple to use like [ACE|http://www.cs.wustl.edu/~schmidt/ACE.html]. Alex encountered Netty2 at [gleamynode.net|http://gleamynode.net/] and contacted me asking if I wanted to work with him on a new network application framework.

In September 2004, I formally joined the Apache Directory team. Alex and I decided to mix concepts between the two architectures to create a new network application framework. We exchanged various ideas to extract the strengths of both legacy frameworks to ultimately come up with what is today's 'MINA'.

Since then MINA became the primary network application framework used by the Apache Directory project for the various implemented by Apache Directory Server (ApacheDS). Several complex protocols in ApacheDS are implemented with MINA: LDAP, Kerberos, DNS and NTP.

 

曾经据说Tomcat也要用Mina框架改写一下底层,后来估计因为Reactive概念盛起,而被放弃了吧。

当前Netty之所以有盖过Mina的趋势,也在于Reactive概念的兴起吧。这种响应式、被动式网络处理机制,或许将是未来网络应用的基础机制。

转载于:https://my.oschina.net/dayu6/blog/3024672

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值