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