前言
在java界,netty無疑是開發網絡應用的拿手菜。你不需要太多關注複雜的nio模型和底層網絡的細節,使用其豐富的接口,可以很容易的實作複雜的通訊功能。
作為目前最流行的NIO架構,Netty在網際網路領域、大資料分布式計算領域、遊戲行業、通信行業等獲得了廣泛的應用,一些業界著名的開源元件也基于Netty建構,比如RPC架構、zookeeper等。由此可見,掌握Netty技術對于開發人員來說是非常重要的。
附面試專用思維導圖(供參考)

為了讓更多的開發人員學習好Netty,特此公布:騰訊高工手寫的13萬字的“Netty速成手冊”。
第一部分:Netty的概念及體系結構
1.Netty——異步和事件驅動(Java網絡程式設計+Netty簡介+Netty的核心元件)
2.你的第一款Netty應用程式(設定開發環境+Netty用戶端/伺服器概覽+編寫Echo伺服器+編寫Echo用戶端+建構和運作Echo伺服器和用戶端)
3.Netty的元件和設計
4.傳輸(案例研究:傳輸遷移+傳輸API+内置的傳輸+傳輸的用例)
5.ByteBuf(ByteBuf的API+ByteBuf類——Netty的資料容器+位元組級操作+ByteBufHolder接口+ByteBuf配置設定+引用計數)
6.ChannelHandler和ChannelPipeline(ChannelHandler家族+ChannelPipeline接口+ChannelHandlerContext接口+異常處理)
7.EventLoop和線程模型(線程模型概述+EventLoop接口+任務排程+實作細節)
8.引導(Bootstrap類+引導用戶端和無連接配接協定+引導伺服器+從Channel引導用戶端+在引導過程中添加多個ChannelHandler+引導DatagramChannel+關閉)
9.單元測試(EmbeddedChannel概述+使用EmbeddedChannel測試ChannelHandler+測試異常處理)
第二部分:編解碼器
1.編解碼器架構(什麼是編碼器?+解碼器+編碼器+抽象的編解碼器類)
2.預置的ChannelHandler和編解碼器(通過SSL/TLS保護Netty應用程式+建構基于Netty的HTTP/HTTPS應用程式+空閑的連接配接和逾時+解碼基于分隔符的協定和基于長度的協定+寫大型資料+序列化資料)
第三部分:網絡協定
1.WebSocket(WebSocket簡介+我們的WebSocket示例應用程式+添加WebSocket支援+測試該應用程式)
2.使用UDP廣播事件(UDP的基礎知識+UDP廣播+UDP示例應用程式+消息POJO: LogEvent+編寫廣播者+編寫螢幕+運作LogEventBroadcaster和LogEventMonitor)
第四部分:案例研究
1.案例研究(上)
2.案例研究(下)