| 企服解答
Netty是由JBOSS提供的一個java開源框架,是一個高性能、異步事件驅動的NIO框架,它提供了對TCP、UDP和文件傳輸的支持,作為一個異步NIO框架,Netty的所有IO操作都是異步非阻塞
Netty的應用場景:
1.互聯網行業
在分布式系統中,各個節點之間需要遠程服務調用,高性能的RPC框架必不可少,Netty作為異步高新能的通信框架,往往作為基礎通信組件被這些RPC框架使用。
典型的應用有:阿里分布式服務框架Dubbo的RPC框架使用Dubbo協議進行節點間通信,Dubbo協議默認使用Netty作為基礎通信組件,用于實現各進程節點之間的內部通信。
除了 Dubbo 之外,淘寶的消息中間件 RocketMQ 的消息生產者和消息消費者之間,也采用 Netty 進行高性能、異步通信。
2.游戲行業
無論是手游服務端還是大型的網絡游戲,Java語言得到了越來越廣泛的應用。Netty作為高性能的基礎通信組件,它本身提供了TCP/UDP和HTTP協議棧。
非常方便定制和開發私有協議棧,賬號登錄服務器,地圖服務器之間可以方便的通過Netty進行高性能的通信
3.大數據領域
經典的Hadoop的高性能通信和序列化組件Avro的RPC框架,默認采用Netty進行跨界點通信,它的Netty Service基于Netty框架二次封裝實現。
| 擴展閱讀
netty框架的優勢:
1、API使用簡單,開發門檻低。
2、功能強大,預置了多種編解碼功能,支持多種主流協議。
3、定制能力強,可以通過ChannelHandler對通信框架進行靈活地擴展。
4、性能高,通過與其他業界主流的NIO框架對比,Netty的綜合性能最優。
5、成熟、穩定,Netty修復了已經發現的所有JDK NIO BUG,業務開發人員不需要再為NIO的BUG而煩惱。
6、社區活躍,版本迭代周期短,發現的BUG可以被及時修復,同時,更多的新功能會加入。
7、經歷了大規模的商業應用考驗,質量得到驗證。在互聯網、大數據、網絡游戲、企業應用、電信軟件等眾多行業得到成功商用,證明了它已經完全能夠滿足不同行業的商業應用了。
netty的特點:
1、高并發
Netty是一款基于NIO(Nonblocking I/O,非阻塞IO)開發的網絡通信框架,對比于BIO(Blocking I/O,阻塞IO),他的并發性能得到了很大提高。
2、傳輸快
Netty的傳輸快其實也是依賴了NIO的一個特性——零拷貝。
3、封裝好
Netty封裝了NIO操作的很多細節,提供易于使用的API。
[免責聲明]
文章標題: netty框架干什么的
文章內容為網站編輯整理發布,僅供學習與參考,不代表本網站贊同其觀點和對其真實性負責。如涉及作品內容、版權和其它問題,請及時溝通。發送郵件至36dianping@36kr.com,我們會在3個工作日內處理。