Jetty 和 Netty 有什么区别?

发布于 2024-10-24 21:59:54 字数 110 浏览 2 评论 0原文

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

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

Netty 支持 Servlet 3.0 吗?

What is the main difference between Jetty and Netty?

Netty is part of Jboss, but is it the default web server container?

Does Netty support Servlets 3.0?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

国产ˉ祖宗 2024-10-31 21:59:54

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

Netty是一个异步事件驱动的网络应用框架。
例如,您可以借助 Netty 框架编写自己的 servlet 容器或 http 客户端应用程序。

编辑:

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

Jetty is a lightweight servlet container, easy to embed within a java application, there is an easy to use jetty client also.

Netty is an asynchronous event-driven network application framework.
You can write your own servlet container or http client app with help of the Netty framework for example.

Edit:

Forgot to mention that Jetty 8 and Apache Tomcat 7 support servlet 3.0 spec, but netty doesn't. Because it's not a servlet container.

迷你仙 2024-10-31 21:59:54

这是粗略的简化,但它可以轻松理解差异:

Netty 是一个编写 TCPUDP 应用程序的框架。

Jetty 是一个用于编写 HTTP 应用程序的框架。

This is crude simplification, but it allows to understand the difference easily:

Netty is a framework to write TCP and UDP applications.

Jetty is a framework to write HTTP applications.

起风了 2024-10-31 21:59:54

我认为随着时间的推移,随着两个项目都添加新功能,重叠会增加。

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

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

Netty是一个NIO客户端服务器框架,可以快速、轻松地实现
开发网络应用程序,例如协议服务器和
客户。它极大地简化和简化了网络编程
例如 TCP 和 UDP 套接字服务器。
所以 Netty 专注于帮助编写 NIO/非阻塞、异步网络程序。

如果您经常处理网络协议并希望它是非阻塞的,请使用 Netty(通常用于高性能情况)。如果您想要一个轻型 HTTP servlet 容器,请使用 Jetty。

I think over time the overlap increases as both projects add new features.

Here is a benchmark: https://gist.github.com/dhanji/81ccc0e6652eccaf43cf

Jetty is a web server (HTTP), similar to the likes of Tomcat and such, but lighter than most servlet containers. This is closer to the traditional Java way of doing server applications (servlets, WAR files). Like Netty it is sufficiently lightweight to be embedded into Java applications.

Netty is a NIO client server framework which enables quick and easy
development of network applications such as protocol servers and
clients. It greatly simplifies and streamlines network programming
such as TCP and UDP socket server.
So Netty is focusing on helping to write NIO/non-blocking, asynchronous network programs.

If you deal a lot with network protocols and want it to be non-blocking use Netty (usually for high-performance cases). If you want a light HTTP servlet container use Jetty.

水中月 2024-10-31 21:59:54

寻找其他答案,因为它们提供了更多上下文,但我发现的是:

  • Netty 使用整洁且信息丰富的日志(即使在 DEBUG 中) - 每个请求默认情况下可能会生成 5-10 个调试日志
  • Jetty 会以非常低级别的不整洁使日志膨胀日志 - 即使是简单的请求也会生成大约 50-70 条调试行,包括标头解析

Look for other answers, as they provide more context, but what I found is:

  • Netty uses tidy and informative logs (even in DEBUG) - each request generates maybe 5-10 debug logs by default
  • Jetty bloats the logs with very low-level untidy logs - even simple requests generates around 50-70 debug lines, including header parsing
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文