2011-12-26 24 views
21

我們正在編寫處理消息的高性能服務器。我們已經使用了Jetty幾年並喜歡它,但Netty看起來像它有一些很酷的功能。特別是,它支持異步處理,因此線程不必束縛等待系統處理給定的消息。它旨在解決C10k問題。使用Jetty還是Netty?

我知道Jetty在內部對NIO有一些支持。它是否也有異步模型?

消息可能是http格式。在進行普通的舊HTTP時,Netty是否比Jetty具有任何性能優勢?

我想擁有一個真正的servlet容器的所有便利功能,但不以降低性能爲代價。

回答

26

Jetty使用專有API支持自版本6以來的異步請求處理(請參閱here)。更新版本支持將異步API作爲Servlet 3.0 API的一部分,就像任何其他兼容的實現一樣。

使用Netty看起來像很多工作一樣沒有什麼收穫,除非你有非常特殊的要求。否則,Jetty將以最小的努力爲您完成這項工作。

+9

很好的建議,雖然我們已經決定和Netty一起去。異步支持的servlet 3.0 api令人費解。很難跟隨正在發生的事情,容易陷入困境。另外,Netty未來對低級協議的處理將會更好。但是你的回答是一個很好的答案。 – ccleve 2011-12-27 20:58:20

+2

@skaffman:有任何指向Jetty vs Netty的文章/博客更詳細的討論?從應該使用Netty還是堅持使用Jetty(或者Tomcat或者什麼)的角度來看, – 2014-03-23 22:09:55