漫畫(huà):兄弟,下班別走啊,一起填坑!
后記:這篇漫畫(huà)是Netty有什么用處的一次科普, 希望大家看過(guò)以后至少能了解到一點(diǎn):直接對(duì)Java NIO編程非常不容易,想寫(xiě)出高并發(fā)的、健壯的程序很難,不僅要求超一流的編程技巧,還需要幾個(gè)復(fù)雜領(lǐng)域(網(wǎng)絡(luò)編程、多線程處理和并發(fā))的專(zhuān)業(yè)知識(shí)。Netty 優(yōu)雅地處理了這些領(lǐng)域的知識(shí),使得即使是網(wǎng)絡(luò)編程新手也能使用。
Netty 是一款異步的事件驅(qū)動(dòng)的網(wǎng)絡(luò)應(yīng)用程序框架,支持快速地開(kāi)發(fā)可維護(hù)的高性能的面向協(xié)議的服務(wù)器和客戶(hù)端, 它對(duì)Java NIO做了封裝,把那些復(fù)雜的底層細(xì)節(jié)都屏蔽了。注意幾個(gè)關(guān)鍵詞,首先它是個(gè)框架,是個(gè)“半成品”,不能開(kāi)箱即用,你必須得拿過(guò)來(lái)做點(diǎn)定制,利用它開(kāi)發(fā)出自己的應(yīng)用程序,然后才能運(yùn)行(就像使用Spring那樣)。 例如上文的張大胖想開(kāi)發(fā)一個(gè)自己的高性能的RPC框架, RPC的調(diào)用協(xié)議,數(shù)據(jù)的格式和次序也是自己定義的,現(xiàn)有的HTTP根本玩不轉(zhuǎn),那使用Netty就是絕佳的選擇。一個(gè)更加知名的例子就是阿里巴巴的Dubbo了,這個(gè)RPC框架的底層用的就是Netty。 其次就是高性能,高可靠,有了Netty,自己就不要基于NIO進(jìn)行編程了。
【本文為51CTO專(zhuān)欄作者“劉欣”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)通過(guò)作者微信公眾號(hào)coderising獲取授權(quán)】











































