JAVA NIO 類庫的異步通信框架netty和mina


Netty 和 Mina 我究竟該選擇哪個?

  根據我的經驗,無論選擇哪個,都是個正確的選擇。兩者各有千秋,Netty 在內存管理方面更勝一籌,綜合性能也更優。但是,API 變更的管理和兼容性做的不是太好。相比於 Netty,Mina 的前向兼容性、內聚的可維護性功能更多,例如 JMX 的集成、性能統計、狀態機等。

 

Netty 是業界最流行的 NIO 框架之一,它的健壯性、功能、性能、可定制性和可擴展性在同類框架中都是首屈一指的,它已經得到成百上千的商用項目驗證,例如 Hadoop 的 RPC 框架 Avro 使用 Netty 作為通信框架。很多其它業界主流的 RPC 和分布式服務框架,也使用 Netty 來構建高性能的異步通信能力。

  Netty 的優點總結如下:

  • API 使用簡單,開發門檻低;

  • 功能強大,預置了多種編解碼功能,支持多種主流協議;

  • 定制能力強,可以通過 ChannelHandler 對通信框架進行靈活的擴展;

  • 性能高,通過與其它業界主流的 NIO 框架對比,Netty 的綜合性能最優;

  • 社區活躍,版本迭代周期短,發現的 BUG 可以被及時修復,同時,更多的新功能會被加入;

  • 經歷了大規模的商業應用考驗,質量得到驗證。在互聯網、大數據、網絡游戲、企業應用、電信軟件等眾多行業得到成功商用,證明了它完全滿足不同行業的商用標准。

  正是因為這些優點,Netty 逐漸成為 Java NIO 編程的首選框架。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM