1. 程式人生 > >某網最新《Socket網路程式設計進階與實戰》

某網最新《Socket網路程式設計進階與實戰》

第1章 課程導學(Java語言教學)【說明:課程案例部分以Java語言實現】本章節首先會對課程進行導學講解,包括為什麼應該學習本課程,課程目標與收穫,課程內容安排,適合人群和學習建議等,接著會講解程式碼規範與開發注意事項,目的全在於希望極大的方便同學進行本課程的學習。...1-1 課前必讀(不看會錯過一個億)1-2 課程導學(課前必看)第2章 Socket網路程式設計快速入門本章首先整體介紹什麼是Socket網路程式設計;讓大家對Socket有個大概的概念與方向。之後通過幾個小Case引出課程的主角,輕鬆愉快的讓你體驗到Socket程式設計的快感。本章節主要收穫:1. 明白什麼是網路程式設計,2. 理解Socket與TCP、UDP的關係 3. 明白網路傳輸中的報文、協議、Mac、IP以及埠的定義等。 ...

2-1 什麼是網路程式設計?2-2 Socket與TCP、UDP2-3 Socket TCP牛刀小試-客戶端實現2-4 Socket TCP牛刀小試-服務端實現2-5 報文、協議、Mac地址2-6 IP、埠及遠端伺服器第3章 Socket UDP快速入門UDP是Socket中的重要組成部分;在本章節中帶領大家瞭解什麼是UDP,以及明白可以用UDP來做什麼。本章節主要收穫:1. 明白UDP是什麼,2. UDP的主要作用, 3. UDP的簡單用法以及API學習,4. 理解網路中的單播、廣播、多播等概念與技術實現 ...3-1 UDP是什麼3-2 UDP核心API講解3-3 UDP單播、廣播、多播-1
3-4 UDP單播、廣播、多播-23-5 案例實操-區域網搜尋案例-13-6 案例實操-區域網搜尋案例-23-7 案例實操-區域網搜尋案例-3第4章 Socket TCP快速入門TCP可以說是Socket的最重要組成,同時也是網路傳輸的基礎;有了TCP基石才有如今穩定的網路傳輸。本章節讓大家明白TCP的重要性,同時學會利用TCP進行簡單的資料傳輸。本章節主要收穫:1. 明白TCP是什麼,理解TCP的重要性,2. 學會TCP的精髓以及API使用,3. TCP的連線可靠性原理,4. TCP的傳輸可靠性原理,5. 學會利用TC...4-1 TCP是什麼、能做什麼4-2 TCP核心API講解4-3 TCP連線可靠性-三次握手、四次揮手
4-4 TCP傳輸可靠性-排序、丟棄、重發4-5 案例實操-TCP傳輸初始化配置-14-6 案例實操-TCP傳輸初始化配置-24-7 案例實操-TCP基礎資料傳輸-14-8 案例實操-TCP基礎資料傳輸-2第5章 UDP輔助TCP實現點對點傳輸案例前面我們學習了UDP、TCP,本章節中將利用UDP 的發現進行TCP連線建立點對點資料傳輸,同時讓大家理解並實現資料收發並行。本章節主要收穫:1. UDP如何與TCP結合使用,2. UDP與TCP的主要職責劃分,3. 傳輸資料如何做到並傳輸,4. 學會利用多執行緒解決阻塞與並行的案例 。 ...5-1 UDP搜尋IP與埠-15-2 UDP搜尋IP與埠-25-3 點對點傳輸實現5-4 資料傳送與接收並行-15-5 資料傳送與接收並行-25-6 資料傳送與接收並行-3第6章 簡易聊天室案例一對多聊天室模型是經典不衰的案例,這樣的架構也可稱為CS模型;在這樣的模型中有服務器端充當所有的資料傳輸與轉送操作;但同時也會給伺服器帶來巨大的壓力。在本章節你將學習到一個聊天室的搭建,同時能明白服務器的壓力優化策略。 本章節主要收穫:1. 聊天室基礎設計,2. 聊天室中服務器設計方案,3. 聊天室服務器數...6-1 聊天室資料傳輸設計6-2 聊天室訊息接收實現6-3 聊天室訊息轉發實現6-4 伺服器狀態與測試用例構建-16-5 伺服器狀態與測試用例構建-26-6 伺服器效能分析與壓測6-7 伺服器效能總結與優化方案第7章 伺服器傳輸優化-NIOSocket在我們的認知中是高效的,在上章節中瞭解到一個Bad的設計是會搞崩服務器的。消耗資源多、 慢這都不應是咱們需要的;我們要的是高效能且極度簡單的傳輸模型。那麼在本章節中將帶你進入全新的領域“NIO”一個神祕而充滿魅力的技術方案。使用NIO進行伺服器的簡單優化,解決執行緒啟動太多的問題。本章節主要收穫:1. 明...7-1 阻塞IO和⾮非阻塞IO7-2 NIO Family一覽7-3 NIO常⽤用API學習7-4 NIO重寫伺服器-17-5 NIO重寫伺服器-27-6 NIO重寫伺服器-37-7 NIO伺服器Thread優化-17-8 NIO伺服器Thread優化-27-9 NIO伺服器Thread優化-37-10 NIO伺服器Thread優化-47-11 NIO伺服器Thread優化-57-12 NIO伺服器Thread優化-67-13 NIO知識歸納梳理第8章 資料傳輸穩定性優化在實際的測試中我們會發現:1. 當傳送資料足夠快時,服務器會因為訊息處理不及時引起訊息粘包的現象,2. 當業務層緩衝區大小不夠時將引起單訊息丟失不全的現象。 在本章節中我們借鑑HTTP的訊息體協議並簡化到Socket傳輸中,以便在客戶端與服務器上訊息不會出現粘包,不全等現象。本章節主要收穫:1. 明白什麼是粘包、消...8-1 訊息不完整與訊息粘包8-2 復現資料傳輸異常現象8-3 傳輸分析-如何有序的混傳資料8-4 傳輸分析-借鑑學習HTTP精髓8-5 構建有序訊息體-排程介面定義8-6 構建有序訊息體-基本傳送排程實現8-7 構建有序訊息體-基本接收排程實現-18-8 構建有序訊息體-基本接收排程實現-28-9 訊息粘包與訊息不全測試第9章 區域網檔案快傳技術實戰茄子快傳、QQ快傳核心功能是如何實現的?本章節讓你明白這些你都能實現;甚至更好、更快!本章節主要收穫: 1. 檔案訊息與普通訊息的區別以及注意事項,2. 如何利用Socket傳送⽂件,3. 如何利用流(Stream)實現檔案與普通訊息的組合封裝,4. 如果利用範型實現對Packet、Frame的規則封裝,5. 檔案分片技術原理與實現...9-1 混傳資料總結與梳理9-2 檔案傳輸與普通傳輸的區別9-3 檔案訊息模型基礎實現-19-4 檔案訊息模型基礎實現-29-5 檔案訊息模型基礎實現-39-6 傳送檔案到伺服器-19-7 傳送檔案到伺服器-29-8 傳送檔案到伺服器-39-9 訊息分片傳輸設計與實現-19-10 訊息分片傳輸設計與實現-29-11 訊息分片傳輸設計與實現-39-12 訊息分片傳輸設計與實現-49-13 訊息分片設計與實現-傳送排程-19-14 訊息分片設計與實現-傳送排程-29-15 訊息分片設計與實現-接收排程-19-16 訊息分片設計與實現-接收排程-29-17 檔案快傳收尾與總結第10章 聊天室升級版實戰一個完整的聊天室應具備優秀的訊息送達效率以及訊息傳輸的保障。實際開發難點在於如何合理分配訊息排程資源,並且如何知道客戶端當前的狀態以便進行客戶端的重連等機制。本章節主要收穫:1. 利用執行緒+佇列方案進行排程優化,2. 心跳保持為什麼需要做以及如何做,3. 如何傳送心跳包以及消費心跳包,4. 高效資料消費與線...10-1 訊息排程分析10-2 併發客戶端BUG修復與效能優化-110-3 併發客戶端BUG修復與效能優化-210-4 併發客戶端BUG修復與效能優化-310-5 資料三層緩衝區IoArgs排程優化10-6 伺服器訊息排程邏輯規範化-110-7 伺服器訊息排程邏輯規範化-210-8 伺服器訊息排程邏輯規範化-310-9 伺服器訊息排程邏輯規範化-410-10 心跳包必要性與策略選擇10-11 心跳包構建與消費排程-110-12 心跳包構建與消費排程-210-13 心跳包構建與消費排程-3第11章 語音資料即時通訊實戰近幾年,視訊語音直播可謂風生水起,其核心技術就是資料流實時傳輸;在本章節中著重講解語音聊天技術的實現,當然你也可以擴充套件為視訊聊天等。 在本章節中對資料代理橋接方案是重點,訊息發與傳輸最短送達方案也是難點。 本章節主要收穫:1. 理解即時語音聊天傳輸原理,2. “P2P”技術實現,3. 什麼是資料橋接,4. 如...第12章 整體程式碼結構梳理與昇華雖然我們實現了常見案例,但是程式碼應當追求複用與實用性。 本章節中帶來了新的知識點:資料優先順序排程與封裝、記憶體複用模型等等;這都是提升你技術的絕佳機會。本章節主要收穫:1. 審視自身,明白現有程式碼缺陷, 2. 如何實現排程中分優先順序排程,3. 瞭解高併發中記憶體的佔用問題,4. 學會記憶體複用的設計,5. 實現記憶體...第13章 課程總結本章節著重於總結Socket課程的全部知識點,同時展望後續的開發。 

下載地址:百度網盤