Netty

Netty

Netty是由JBOSS提供的一個java開源框架。Netty提供異步的、事件驅動的網路應用程式框架和工具,用以快速開發高性能、高可靠性的網路伺服器和客戶端程式。也就是說,Netty 是一個基於NIO的客戶,伺服器端編程框架,使用Netty 可以確保你快速和簡單的開發出一個網路套用,例如實現了某種協定的客戶,服務端套用。Netty相當簡化和流線化了網路套用的編程開發過程,例如,TCP和UDP的socket服務開發。“快速”和“簡單”並不意味著會讓你的最終套用產生維護性或性能上的問題。Netty 是一個吸收了多種協定的實現經驗,這些協定包括FTP,SMTP,HTTP,各種二進制,文本協定,並經過相當精心設計的項目,最終,Netty 成功的找到了一種方式,在保證易於開發的同時還保證了其套用的性能,穩定性和伸縮性。

基本信息

特點

設計

NettyNetty
針對多種傳輸類型的統一接口-阻塞和非阻塞

簡單但更強大的執行緒模型

真正的無連線的數據報套接字支持

連結邏輯支持復用

易用性

大量的Javadoc和代碼實例

除了在JDK1.6+額外的限制。(一些特徵是只支持在Java1.7+。可選的功能可能有額外的限制。)

性能

比核心JavaAPI更好的吞吐量,較低的延時

資源消耗更少,這個得益於共享池和重用

減少記憶體拷貝

健壯性

消除由於慢,快,或重載連線產生的OutOfMemoryError

消除經常發現在NIO在高速網路中的套用中的不公平的讀/寫比

安全

完整的SSL/TLS和StartTLS的支持

行在受限的環境例如Applet或OSGI

社區

發布的更早和更頻繁

社區驅動

新特性

處理大容量數據流更簡單

處理協定編碼和單元測試更簡單

I/O逾時和idle狀態檢測

應用程式的關閉更簡單,更安全

更可靠的OutOfMemoryError預防

新的傳輸方式

1、基於BIO和NIO的UDP傳輸

2、本地傳輸(又名 in-VM傳輸)

3、HTTP通道,可繞過防火牆

新的編碼器

1、HTTP 客戶端和伺服器端

2、用於實現各種專有協定的工具

其他技術整合

1、Google Protocol Buffers

2、JBoss Microcontainer, OSGi, Guice以及Spring

相關詞條

相關搜尋

熱門詞條

聯絡我們