https://my.oschina.net/kind790/blog/520738
http://blog.csdn.net/w13770269691/article/details/8614584
Apache Mina2.x網(wǎng)絡(luò)通信框架使用入門
http://aiilive.blog.51cto.com/1925756/1589561
http://blog.csdn.net/luo_deng/article/details/50920560
MINA拆包問題的簡(jiǎn)單討論(http://intheworld.win/2017/01/22/mina%E6%8B%86%E5%8C%85%E9%97%AE%E9%A2%98%E7%9A%84%E7%AE%80%E5%8D%95%E8%AE%A8%E8%AE%BA/)
Mina工作原理分析
Mina架構(gòu)與優(yōu)化指南
Mina2線程詳解
一個(gè)java頁游服務(wù)器框架
https://github.com/yongzhidai/GameServer
通信協(xié)議:
- flag(1 byte)
- length(4 byte,消息號(hào)加消息內(nèi)容的長(zhǎng)度)
- protocol code(4 byte)
- content
flag:是一個(gè)預(yù)留標(biāo)識(shí)
length:表示消息號(hào)和消息內(nèi)容的長(zhǎng)度
protocol code:自定義消息號(hào)气筋,通過次消息號(hào)選擇相應(yīng)的消息處理器邀泉,自然消息號(hào)是不能重復(fù)的摆舟,一個(gè)int表示范圍足夠使用
content: 消息內(nèi)容,一個(gè)有序的數(shù)據(jù)的數(shù)組嘉抓。protocol code和content都要在開發(fā)功能時(shí)定義在‘消息協(xié)議’文檔中的,例如GameServer項(xiàng)目中的“消息協(xié)議.xls”
消息處理:
服務(wù)器收到客戶端發(fā)來的消息晕窑,MsgDispatcher會(huì)根據(jù)其消息號(hào)選擇對(duì)應(yīng)的MsgProcessor進(jìn)行處理抑片。MsgProcessor會(huì)讀取content做相應(yīng)的處理。
Netty精粹之TCP粘包拆包問題
https://my.oschina.net/andylucc/blog/625315