鍍金池/ 教程/ Java/ 問題
Netty 實(shí)現(xiàn) WebSocket 聊天功能
總結(jié)
寫個(gè)時(shí)間客戶端
寫個(gè)丟棄服務(wù)器
問題
開始之前
關(guān)閉你的應(yīng)用
開始
用POJO代替ByteBuf
總結(jié)
架構(gòu)總覽
豐富的緩沖實(shí)現(xiàn)
解決
寫個(gè)應(yīng)答服務(wù)器
I/O API 統(tǒng)一的異步 I/O API
適用快速開發(fā)的高級(jí)組件
處理一個(gè)基于流的傳輸
Netty 實(shí)現(xiàn)聊天功能
基于攔截鏈模式的事件模型
寫個(gè)時(shí)間服務(wù)器
查看收到的數(shù)據(jù)

問題

今天,我們使用通用的應(yīng)用程序或者類庫來實(shí)現(xiàn)互相通訊,比如,我們經(jīng)常使用一個(gè) HTTP 客戶端庫來從 web 服務(wù)器上獲取信息,或者通過 web 服務(wù)來執(zhí)行一個(gè)遠(yuǎn)程的調(diào)用。

然而,有時(shí)候一個(gè)通用的協(xié)議或他的實(shí)現(xiàn)并沒有很好的滿足需求。比如我們無法使用一個(gè)通用的 HTTP 服務(wù)器來處理大文件、電子郵件以及近實(shí)時(shí)消息,比如金融信息和多人游戲數(shù)據(jù)。我們需要一個(gè)高度優(yōu)化的協(xié)議來處理一些特殊的場景。例如你可能想實(shí)現(xiàn)一個(gè)優(yōu)化了的 Ajax 的聊天應(yīng)用、媒體流傳輸或者是大文件傳輸器,你甚至可以自己設(shè)計(jì)和實(shí)現(xiàn)一個(gè)全新的協(xié)議來準(zhǔn)確地實(shí)現(xiàn)你的需求。

另一個(gè)不可避免的情況是當(dāng)你不得不處理遺留的專有協(xié)議來確保與舊系統(tǒng)的互操作性。在這種情況下,重要的是我們?nèi)绾尾拍芸焖賹?shí)現(xiàn)協(xié)議而不犧牲應(yīng)用的穩(wěn)定性和性能。