อะไรคือความแตกต่างที่สำคัญระหว่าง Jetty และ Netty?
Netty เป็นส่วนหนึ่งของ Jboss แต่เป็นคอนเทนเนอร์ของเว็บเซิร์ฟเวอร์เริ่มต้นหรือไม่
Netty รองรับ Servlets 3.0 หรือไม่
อะไรคือความแตกต่างที่สำคัญระหว่าง Jetty และ Netty?
Netty เป็นส่วนหนึ่งของ Jboss แต่เป็นคอนเทนเนอร์ของเว็บเซิร์ฟเวอร์เริ่มต้นหรือไม่
Netty รองรับ Servlets 3.0 หรือไม่
คำตอบ:
ท่าเทียบเรือเป็นภาชนะ servlet น้ำหนักเบาง่ายต่อการฝังภายในแอปพลิเคชันจาวานอกจากนี้ยังมีลูกค้าท่าเทียบเรือที่ใช้งานง่าย
Nettyเป็นเฟรมเวิร์กแอปพลิเคชันเครือข่ายที่ขับเคลื่อนด้วยเหตุการณ์แบบอะซิงโครนัส คุณสามารถเขียน servlet container ของคุณเองหรือแอพ http ไคลเอ็นต์ด้วยความช่วยเหลือของ Netty framework
แก้ไข:
ลืมที่จะพูดถึงว่า Jetty 8 และ Apache Tomcat 7 รองรับข้อมูลจำเพาะ servlet 3.0 แต่ netty ไม่ได้ เพราะมันไม่ใช่คอนเทนเนอร์ servlet
ฉันคิดว่าเมื่อเวลาผ่านไปการทับซ้อนเพิ่มขึ้นเมื่อทั้งสองโครงการเพิ่มคุณสมบัติใหม่
นี่คือมาตรฐาน: https://gist.github.com/dhanji/81ccc0e6652eccaf43cf
ท่าเทียบเรือเป็นเว็บเซิร์ฟเวอร์ (HTTP) คล้ายกับไลค์ของ Tomcat และเช่นนั้น แต่เบากว่าคอนเทนเนอร์ servlet ส่วนใหญ่ สิ่งนี้อยู่ใกล้กับวิธี Java แบบดั้งเดิมในการทำแอปพลิเคชันเซิร์ฟเวอร์ (servlets, ไฟล์ WAR) เช่น Netty มันเบาพอที่จะฝังลงในแอปพลิเคชัน Java
Nettyเป็นเฟรมเวิร์กเซิร์ฟเวอร์ไคลเอ็นต์ NIOซึ่งช่วยให้การพัฒนาแอปพลิเคชั่นเครือข่ายอย่างรวดเร็วและง่ายดายเช่นโปรโตคอลเซิร์ฟเวอร์และไคลเอนต์ ช่วยลดความยุ่งยากและเพิ่มความคล่องตัวในการเขียนโปรแกรมเครือข่ายเช่นซ็อกเก็ตเซิร์ฟเวอร์ TCP และ UDP ดังนั้น Netty จึงให้ความสำคัญกับการช่วยเขียนโปรแกรมเครือข่าย NIO / ไม่บล็อกโปรแกรมอะซิงโครนัส
หากคุณทำข้อตกลงกับเครือข่ายโปรโตคอลจำนวนมากและต้องการให้มันไม่ใช่การปิดกั้นให้ใช้ Netty (โดยปกติจะเป็นกรณีที่มีประสิทธิภาพสูง) หากคุณต้องการให้ภาชนะเซิร์ฟเล็ต HTTP อ่อนใช้ท่าเทียบเรือ
นี่คือการทำให้เข้าใจง่าย แต่ช่วยให้เข้าใจความแตกต่างได้ง่าย:
Nettyเป็นกรอบในการเขียนแอปพลิเคชันTCP
Jettyเป็นเฟรมเวิร์กสำหรับเขียนแอ็พพลิเคชันHTTP