Jetty和Netty有什么区别?

Jetty和Netty的主要区别是什么?

Netty是Jboss的一部分,但它是默认的Web服务器容器?

Netty是否支持Servlets 3.0?

Jetty是一个轻量级的servlet容器,易于embedded到java应用程序中,还有一个易于使用的jetty客户端。

Netty是一个asynchronous事件驱动的networking应用程序框架。 例如,您可以在Netty框架的帮助下编写自己的servlet容器或http客户机应用程序。

编辑:

忘了提及Jetty 8和Apache Tomcat 7支持servlet 3.0规范,但netty不支持。 因为它不是一个servlet容器。

我认为,随着时间的推移,这两个项目增加了新的function,重叠程度增加

这是一个基准: https : //gist.github.com/dhanji/81ccc0e6652eccaf43cf

Jetty是一个Web服务器(HTTP),与Tomcat等类似,但比大多数servlet容器更轻。 这更接近于传统的Java服务器应用程序(servlet,WAR文件)的方式。 像Netty一样,它是足够轻量级的embedded到Java应用程序中。

Netty是一个NIO客户端服务器框架,可以快速简单地开发协议服务器和客户端等networking应用程序。 它极大地简化和简化了TCP和UDP套接字服务器等networking编程。 所以Netty专注于帮助编写NIO /非阻塞asynchronousnetworking程序。

如果你处理很多networking协议,并希望它是非阻塞的使用Netty(通常用于高性能的情况下)。 如果你想要一个轻的HTTP servlet容器使用Jetty。

  • 另请参阅: 使用Jetty或Netty?
  • Netty的替代scheme:高性能networking的Netty替代scheme是什么?
  • 关于Netty的文章: http : //netty.io/wiki/related-articles.html
  • 带有Netty的Servlet 3.0: http ://www.jroller.com/agoubard/entry/run_servlets_with_netty#.Vtb0Teaunjs