netty vs mina

 1Codec比較

mina編碼解碼器(codec)創建實例可有以下選擇:

1)      每一次接收到的數據創建一次codec實例

2)      爲所有client鏈接創建一次codec實例

netty編碼解碼器創建實例可有以下選擇:

1)      每一次鏈接創建一次codec實例

2)      爲所有client鏈接創建一次codec實例

2Handler比較

Minahandler創建實例可有以下選擇:

1)      爲所有client鏈接創建一次codec實例

Netty編碼解碼器創建實例可有以下選擇:

1)  每一次鏈接創建一次handler實例

2)  爲所有client鏈接創建一次handler實例

三、文檔比較

         1nettymina文檔都比較多,但mina文檔不齊全,netty文檔比較清晰

四、UDP協議傳輸

1、 nettyUDP無連接的特性暴露出來;而minaUDP進行了高級層次的抽象,可以把UDP當成"面向連接"的協議,Netty需要手動處理順序、丟包檢測、重發等等。


網上評價:

1.      mina將內核和一些特性的聯繫過於緊密,使得用戶在不需要這些特性的時候無法脫離,相比下性能會有所下降;netty解決了這個設計問題。

2.      netty基本的架構和mina幾乎完全一樣,使用時候思想上差不多;但是有很多細節的改進(比如說minaIoSession每次讀寫完要調用flip(),nettychannel則不用,並支持zero copy)。

3.      nettymina使用起來更簡單。

4.      關於UDP鏈接:minaTCPUDP一樣當"有連接"的處理,一個UDP請求會按照address產生一個新的IoSession,過期時間是1分鐘,這樣做的好處是顯然的,但是對於有性能要求的項目就不好了,對一個無連接的東西cache 1分鐘,大多數時候可能是白cache了,做無用功。 Mina這樣做可能還有個初衷是連續解碼用的,比如一個包太大了,分了兩次傳輸;但是這樣的設計應該是udp大忌了。


相關的博客:http://my.oschina.net/leoson/blog?catalog=292948


發佈了1 篇原創文章 · 獲贊 29 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章