JettyとNettyの主な違いは何ですか?
NettyはJbossの一部ですが、デフォルトのWebサーバーコンテナーですか?
Nettyはサーブレット3.0をサポートしていますか?
Jettyは、Javaアプリケーション内に簡単に組み込むことができる軽量のサーブレットコンテナです。使いやすいjettyクライアントもあります。
Nettyは、非同期のイベント駆動型ネットワークアプリケーションフレームワークです。たとえば、Nettyフレームワークを使用して、独自のサーブレットコンテナまたはhttpクライアントアプリを作成できます。
編集:
Jetty 8とApache Tomcat 7はサーブレット3.0仕様をサポートしていることを忘れていましたが、nettyはサポートしていません。サーブレットコンテナではないからです。
両方のプロジェクトが新しい機能を追加すると、時間の経過とともにオーバーラップが増加すると思います。
ベンチマークは次のとおりです。 https://Gist.github.com/dhanji/81ccc0e6652eccaf43cf
JettyはWebサーバー(HTTP)で、Tomcatなどに似ていますが、ほとんどのサーブレットコンテナよりも軽量です。これは、サーバーアプリケーション(サーブレット、WARファイル)を行う従来のJavaの方法に近いものです。 Nettyと同様、Javaアプリケーションに埋め込むのに十分な軽量です。
Nettyは、NIO clientサーバーフレームワークであり、プロトコルサーバーやクライアントなどのネットワークアプリケーション。 TCPやUDPソケットサーバーなどのネットワークプログラミングを大幅に簡素化および合理化します。そのため、NettyはNIO /ノンブロッキング、非同期ネットワークプログラムの作成を支援することに注力しています。
ネットワークプロトコルを多く処理し、それをノンブロッキングにしたい場合は、Nettyを使用します(通常、高性能の場合)。軽いHTTPサーブレットコンテナが必要な場合は、Jettyを使用します。
これは大雑把な単純化ですが、違いを簡単に理解できます。
NettyはTCPアプリケーションを記述するためのフレームワークです。
JettyはHTTPアプリケーションを記述するためのフレームワークです。