06-netty入門-爲什麼選擇netty

一.首先我們先說明爲什麼不選擇java原生NIO

1.NIO類庫和API複雜,使用麻煩。

2.需要具備其它的額外技能做鋪墊,例如 熟悉Java多線程和網絡編程。

3.可靠性能力補齊,工作量和難度都很大,例如 客戶端面臨斷重連,網絡閃斷,半包讀寫,失敗緩存,網絡擁堵,異常碼流等問題。

4.JDK NIO的 BUG ,例如臭名昭著的 epoll bug,會導致Selector空輪詢,最終導致CPU100%。

二.爲甚選擇Netty

1.API使用簡單,開發門檻低。

2.功能強大,預置了多種編解碼功能,支持多種主流協議。

3.定製能力強,可以通過ChannelHandler 對通信框架進行靈活的擴展。

4.性能高,與其它業界主流NIO框架比,Netty綜合性能最優。

5.社區活躍,版本迭代週期短,發現bug可以及時解決。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章