Qual è la differenza principale tra Jetty e Netty?
Netty fa parte di Jboss, ma è il contenitore del server Web predefinito?
Netty supporta Servlet 3.0?
Qual è la differenza principale tra Jetty e Netty?
Netty fa parte di Jboss, ma è il contenitore del server Web predefinito?
Netty supporta Servlet 3.0?
Risposte:
Jetty è un contenitore servlet leggero, facile da incorporare in un'applicazione java, c'è anche un client molo facile da usare.
Netty è un framework di applicazioni di rete asincrono guidato da eventi. Ad esempio, è possibile scrivere il proprio contenitore servlet o l'app client http con l'aiuto del framework Netty.
Modificare:
Ho dimenticato di menzionare che Jetty 8 e Apache Tomcat 7 supportano le specifiche servlet 3.0, ma netty no. Perché non è un contenitore servlet.
Penso che nel tempo la sovrapposizione aumenti man mano che entrambi i progetti aggiungono nuove funzionalità.
Ecco un benchmark: https://gist.github.com/dhanji/81ccc0e6652eccaf43cf
Jetty è un web server (HTTP), simile a Tomcat e simili, ma più leggero della maggior parte dei container servlet. Questo è più vicino al tradizionale modo Java di eseguire applicazioni server (servlet, file WAR). Come Netty è sufficientemente leggero per essere incorporato nelle applicazioni Java.
Netty è un framework di server client NIO che consente lo sviluppo rapido e semplice di applicazioni di rete come client e server di protocollo. Semplifica notevolmente e semplifica la programmazione di rete come il server socket TCP e UDP. Quindi Netty si sta concentrando sull'aiutare a scrivere NIO / programmi di rete asincroni non bloccanti.
Se hai molto a che fare con i protocolli di rete e desideri che non blocchi, usa Netty (di solito per casi ad alte prestazioni). Se si desidera un contenitore servlet HTTP leggero, utilizzare Jetty.
Questa è una semplificazione grossolana, ma consente di comprendere facilmente la differenza:
Netty è un framework per scrivere applicazioni TCP .
Jetty è un framework per scrivere applicazioni HTTP .