-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
NIO高并發WEBSOCKET框架開發(微課視頻版) 版權信息
- ISBN:9787302679127
- 條形碼:9787302679127 ; 978-7-302-67912-7
- 裝幀:平裝
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
NIO高并發WEBSOCKET框架開發(微課視頻版) 本書特色
本書以JDK17長期維護版本為示例,詳細地介紹了Java套接字網絡通信相關的知識體系,讓讀者不僅知其然,而且知其,所以然。本書對套接字網絡通信相關的理論分門別類,層層遞進地進行詳細敘述和透徹的分析,既體現了各知識點之間的聯系,又兼顧了其漸進性。本書在介紹每個知識點時都給出了該知識點的應用場景,同時配合代碼演示,讓讀者更能明白其實現原理和使用方式。
NIO高并發WEBSOCKET框架開發(微課視頻版) 內容簡介
"本書全面系統地介紹了Java網絡套接字相關的核心知識點,把官方BIO、NIO的核心知識點用鏈路的方式講解清楚。讀者在學習的過程中需要循序漸進,核心知識點的理解是很重要的。由核心知識點擴展開來就可以形成萬物。學習和創造希望讀者在此過程中能擁有自己的成長和思維。 全書共18章。第1章多線程并發經典案例、第2~5章IO字節輸入輸出流、第6章框架基石反射機制、第7章類加載器、第8章網絡基礎知識、第9章BIO下的Socket套接字、第10章NIO下的緩沖區、第11章NIO下的字符編解碼、第12章NIO下的Socket套接字通道、第13章泛型聲明、第14章List集合框架、第15章Set集合框架、第16章Map集合框架、第17章開源WebSocket框架實戰、第18章JDK21中的虛擬線程。 本書每個章節都有相對應的代碼驗證環節,提供了大量應用實例,每章節均附有習題。 本書適合有一定的Java基礎知識,包括語法、結構、面向對象編程概念、多線程并發和網絡通信基礎的讀者閱讀。本書可作為想自研NIO套接字框架、自定義協議、網絡通信服務相關的軟件開發人員參考用書。 "
NIO高并發WEBSOCKET框架開發(微課視頻版)NIO高并發WEBSOCKET框架開發(微課視頻版) 前言
Java在1.4版本之前使用的是BIO模型。此模型是阻塞式模型,一個套接字連接需要一個線程來維護,一臺計算機能開辟的線程數量有限,并且過多的線程會導致頻繁的上下文切換,所以BIO的并發性能較低。
Java在1.4版本推出了NIO模型。此模型是多路復用的非阻塞式模型,配合Selector、SelectableChannel、SelectionKey可以搭建多路復用的非阻塞式套接字網絡服務。
Java在1.7版本推出了AIO模型。此模型是在NIO的基礎上擴展了異步回調。可以理解為封裝了一個多線程異步回調的框架,任何框架的使用都有兩面性,一方面是封裝好的服務只需調用就可以了; 另一方面也會受到框架設計使用等方面的制約。
Java在21版本推出了虛擬線程。虛擬線程可以創建百萬級虛擬線程,但不能創建百萬級平臺線程。虛擬線程的切換成本較低,平臺線程的切換成本較高。
本書特點
本書以JDK 17長期維護版本為示例,詳細地介紹了Java套接字網絡通信相關的知識體系,讓讀者不僅知其然,而且知其所以然。本書對套接字網絡通信相關的理論分門別類,層層遞進地進行詳細敘述和透徹分析,既體現了各知識點之間的聯系,又兼顧了其漸進性。本書在介紹每個知識點時都給出了該知識點的應用場景,同時配合代碼演示,讓讀者更能明白其實現原理和使用方式。本書豐富的免費配套資源包括源代碼、完整的配套視頻。
本書主要內容
第1章介紹了單例雙重檢查鎖機制、happensbefore原則、LockSupport底層鎖。
第2章介紹了數據流、序列化、文件系統提供的字節輸入流功能。
第3章介紹了數據流、序列化、文件系統提供的字節輸出流功能。
第4章介紹了數據流、序列化、文件系統提供的字符輸入流功能。
第5章介紹了數據流、序列化、文件系統提供的字符輸出流功能。
第6章介紹了Class類框架基石反射機制。
第7章介紹了ClassLoader類加載器,并實現自定義的類加載器。
第8章介紹了網絡基礎知識,如IP地址、網絡接口、UDP。
第9章介紹了BIO模式下的Socket網絡套接字服務。
第10章介紹了NIO模式下的Buffer緩沖區。
第11章介紹了NIO模式下的字符集、解碼器、編碼器。
第12章介紹了NIO模式下搭建多路復用的非阻塞式套接字網絡服務。
第13章介紹了泛型的使用。
第14章介紹了List集合框架。
第15章介紹了Set集合框架。
第16章介紹了Map集合框架。
第17章介紹了自研WebSocket框架。基于Reactor設計模式,使用原生NIO實現的WebSocket網絡框架。支持多線程、高并發、TLS安全層協議。
第18章介紹了JDK 21中的虛擬線程。
資源下載提示
素材(源碼)等資源: 掃描目錄上方的二維碼下載。
視頻等資源: 掃描封底的文泉云盤防盜碼,再掃描書中相應章節的二維碼,可以在線學習。
讀者對象
本書適合想自研NIO套接字框架、自定義協議、網絡通信服務的Java開發人員閱讀。
致謝
特別感謝清華大學出版社趙佳霓編輯。感謝她對本書專業且高效的審閱、對書中各種表意方式和文筆的潤色建議,以及推動本書的出版。同時也感謝參與本書出版的所有出版社的老師,在大家的辛勤努力下,才有了本書的順利出版。
劉寧萌2024年10月
NIO高并發WEBSOCKET框架開發(微課視頻版) 目錄
第1章并發擴展(61min)
1.1單例雙重檢查鎖
1.1.1**階段
1.1.2第二階段
1.1.3第三階段
1.1.4*終階段
1.1.5擴展happensbefore
1.2LockSupport鎖
小結
習題
第2章IO字節輸入流(163min)
2.1File類
2.1.1構造器
2.1.2常用方法
2.1.3搜索工具類
2.2InputStream抽象類
2.3FileInputStream類
2.3.1構造器
2.3.2常用方法
2.4ByteArrayInputStream類
2.4.1構造器
2.4.2常用方法
2.5SequenceInputStream類
2.5.1構造器
2.5.2常用方法
2.6ObjectInputStream類
2.6.1初始化數據
2.6.2構造器
2.6.3常用方法
2.6.4自定義序列化對象
小結
習題
第3章IO字節輸出流(64min)
3.1OutputStream抽象類
3.2FileOutputStream類
3.2.1構造器
3.2.2常用方法
3.3ByteArrayOutputStream類
3.3.1構造器
3.3.2常用方法
3.4ObjectOutputStream類
3.4.1構造器
3.4.2常用方法
3.5字符編碼轉換工具類
小結
習題
第4章IO字符輸入流(32min)
4.1Reader抽象類
4.2InputStreamReader類
4.2.1構造器
4.2.2常用方法
4.3BufferedReader類
4.3.1構造器
4.3.2常用方法
小結
習題
第5章IO字符輸出流(31min)
5.1Writer抽象類
5.2OutputStreamWriter類
5.2.1構造器
5.2.2常用方法
5.3CharArrayWriter類
5.3.1構造器
5.3.2常用方法
小結
習題
第6章反射機制(92min)
6.1Class類
6.1.1使用場景
6.1.2類型信息
6.1.3元數據信息
6.2Constructor類
6.3Field類
6.4Method類
小結
習題
第7章ClassLoader類加載器(72min)
7.1ClassLoader抽象類
7.1.1基本介紹
7.1.2自定義加載器
7.1.3URLClassLoader類
7.2Annotation接口
7.2.1注解的限制
7.2.2內置注解
7.2.3自定義注解
小結
習題
第8章網絡基礎(142min)
8.1InetAddress類
8.1.1核心方法
8.1.2DNS服務
8.2NetworkInterface類
8.3URI類
8.3.1構造器
8.3.2常用方法
8.4URL類
8.4.1構造器
8.4.2常用方法
8.5JarURLConnection抽象類
8.5.1協議規則
8.5.2常用方法
8.6UDP
8.6.1DatagramSocket類
8.6.2DatagramPacket類
小結
習題
第9章Socket套接字(65min)
9.1ServerSocket類
9.1.1構造器
9.1.2常用方法
9.2Socket類
9.2.1構造器
9.2.2常用方法
9.2.3TCP/IP
小結
習題
第10章NIO包(200min)
10.1Buffer抽象類
10.2ByteBuffer抽象類
10.3CharBuffer抽象類
10.4IntBuffer抽象類
10.5LongBuffer抽象類
10.6ShortBuffer抽象類
10.7FloatBuffer抽象類
10.8DoubleBuffer抽象類
小結
習題
第11章文字編解碼(88min)
11.1Charset字符集
11.2CharsetEncoder編碼器
11.3CoderResult類
11.4CharsetDecoder解碼器
小結
習題
第12章網絡通道(99min)
12.1FileChannel抽象類
12.2StandardOpenOption枚舉類
12.3FileLock抽象類
12.4ServerSocketChannel抽象類
12.4.1常用方法
12.4.2使用示例
12.5Selector抽象類
12.6SelectionKey抽象類
12.6.1操作集標識
12.6.2常用方法
12.7SocketChannel抽象類
12.7.1常用方法
12.7.2使用示例
小結
習題
第13章泛型(47min)
13.1泛型類聲明
13.1.1普通類演示
13.1.2泛型類演示
13.2泛型類型限制
13.2.1固定泛型類型
13.2.2通用泛型類型
13.2.3泛型上限控制
13.2.4泛型下限控制
13.3泛型聲明的幾種方式
13.3.1泛型類
13.3.2泛型靜態方法
13.3.3泛型對象方法
小結
習題
第14章List集合框架(142min)
14.1List接口
14.2ArrayList類
14.2.1構造器
14.2.2常用方法
14.3LinkedList類
14.3.1構造器
14.3.2常用方法
14.4Vector類
14.4.1構造器
14.4.2常用方法
14.5Iterator接口
14.6ListIterator接口
小結
習題
第15章Set集合框架(75min)
15.1Set接口
15.2HashSet類
15.2.1構造器
15.2.2常用方法
15.3LinkedHashSet類
15.3.1構造器
15.3.2常用方法
15.4TreeSet類
15.4.1構造器
15.4.2常用方法
小結
習題
第16章Map集合框架(124min)
16.1Map接口
16.2HashMap類
16.2.1數據結構
16.2.2構造器
16.2.3常用方法
16.2.4TreeNode類
16.3LinkedHashMap類
16.3.1數據結構
16.3.2構造器
16.3.3常用方法
16.4TreeMap類
16.4.1數據結構
16.4.2構造器
16.4.3常用方法
小結
習題
第17章開源WebSocket框架(115min)
17.1IM聊天軟件
17.1.1前端展示
17.1.2后端介紹
17.2WebSocket協議
17.2.1WebSocket握手
17.2.2WebSocket數據交互
17.3后端服務
17.3.1啟動流程
17.3.2Boss服務
17.3.3TLS握手
17.3.4Work服務
17.3.5事件服務
小結
習題
第18章虛擬線程(51min)
18.1創建虛擬線程
18.2虛擬線程特點
18.3配置承運方線程
小結
NIO高并發WEBSOCKET框架開發(微課視頻版) 作者簡介
劉寧萌,資深Java工程師,熱愛軟件技術行業。多年Java從業經驗,研究方向包括后端架構設計、分布式、微服務、2D游戲引擎、桌面程序開發等。出版圖書《Java多線程并發體系實戰(微課視頻版)》。
- >
詩經-先民的歌唱
- >
中國歷史的瞬間
- >
煙與鏡
- >
我與地壇
- >
有舍有得是人生
- >
大紅狗在馬戲團-大紅狗克里弗-助人
- >
莉莉和章魚
- >
苦雨齋序跋文-周作人自編集