鍍金池/ 教程/ Java/ Netty 4.x 用戶指南
Java TCP/IP Socket 編程
初識(shí) Spring Security
IntelliJ IDEA 使用教程
Java 并發(fā)性和多線程
Servlet 教程
Netty 4.x 用戶指南
Swing 教程
自己動(dòng)手寫框架
SQL 指南
Hibernate
JUnit 入門教程
MyBatis
排序算法
深入理解 Java 虛擬機(jī)
Struts 2
Eclipse 使用教程
JSP 教程
常見設(shè)計(jì)模式
Java NIO 指南
Java 集合
JNI/NDK 開發(fā)指南
JDBC 指南
Java 中文亂碼解決之道
Tomcat 8 權(quán)威指南
菜鳥學(xué) SSH
Maven 教程
Java 提高篇
前言
Java 面試匯總
Log4j
Spring 教程
深入理解 Java 內(nèi)存模型
Java 反射機(jī)制
Disruptor 入門
Google Guava 官方教程
MySQL 教程
跟我學(xué) Shiro

Netty 4.x 用戶指南

1.Netty 是什么?

Netty 是一個(gè)基于 JAVA NIO 類庫的異步通信框架,它的架構(gòu)特點(diǎn)是:異步非阻塞、基于事件驅(qū)動(dòng)、高性能、高可靠性和高可定制性。

2.使用 Netty 能夠做什么?

開發(fā)異步、非阻塞的 TCP 網(wǎng)絡(luò)應(yīng)用程序;

開發(fā)異步、非阻塞的 UDP 網(wǎng)絡(luò)應(yīng)用程序;

開發(fā)異步文件傳輸應(yīng)用程序;

開發(fā)異步 HTTP 服務(wù)端和客戶端應(yīng)用程序;

提供對(duì)多種編解碼框架的集成,包括谷歌的 Protobuf、Jbossmarshalling、Java 序列化、壓縮編解碼、XML 解碼、字符串編解碼等,這些編解碼框架可以被用戶直接使用;

提供形式多樣的編解碼基礎(chǔ)類庫,可以非常方便的實(shí)現(xiàn)私有協(xié)議棧編解碼框架的二次定制和開發(fā);

基于職責(zé)鏈模式的 Pipeline-Handler 機(jī)制,用戶可以非常方便的對(duì)網(wǎng)絡(luò)事件進(jìn)行攔截和定制;

所有的 IO 操作都是異步的,用戶可以通過 Future-Listener 機(jī)制主動(dòng) Get 結(jié)果或者由 IO 線程操作完成之后主動(dòng) Notify 結(jié)果,用戶的業(yè)務(wù)線程不需要同步等待;

IP 黑白名單控制;

打印消息碼流;

流量控制和整形;

性能統(tǒng)計(jì);

基于鏈路空閑事件檢測的心跳檢測

3.Netty 在哪些行業(yè)得到了應(yīng)用?

互聯(lián)網(wǎng)行業(yè):隨著網(wǎng)站規(guī)模的不斷擴(kuò)大,系統(tǒng)并發(fā)訪問量也越來越高,傳統(tǒng)基于 Tomcat 等 Web 容器的垂直架構(gòu)已經(jīng)無法滿足需求,需要拆分應(yīng)用進(jìn)行服務(wù)化,以提高開發(fā)和維護(hù)效率。從組網(wǎng)情況看,垂直的架構(gòu)拆分之后,系統(tǒng)采用分布式部署,各個(gè)節(jié)點(diǎn)之間需要遠(yuǎn)程服務(wù)調(diào)用,高性能的 RPC 框架必不可少,Netty 作為異步高性能的通信框架,往往作為基礎(chǔ)通信組件被這些 RPC 框架使用。

典型的應(yīng)用有:阿里分布式服務(wù)框架 Dubbo 的 RPC 框架使用 Dubbo 協(xié)議進(jìn)行節(jié)點(diǎn)間通信,Dubbo 協(xié)議默認(rèn)使用 Netty 作為基礎(chǔ)通信組件,用于實(shí)現(xiàn)各進(jìn)程節(jié)點(diǎn)之間的內(nèi)部通信。

SO,作為未來的趨勢,想學(xué)習(xí)的人一定不少。

課程入口