https://my.oschina.net/kind790/blog/520738
http://blog.csdn.net/w13770269691/article/details/8614584
Apache Mina2.x网络通信框架使用入门
http://aiilive.blog.51cto.com/1925756/1589561
http://blog.csdn.net/luo_deng/article/details/50920560
MINA拆包问题的简单讨论(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架构与优化指南
Mina2线程详解
一个java页游服务器框架
https://github.com/yongzhidai/GameServer
通信协议:
- flag(1 byte)
- length(4 byte,消息号加消息内容的长度)
- protocol code(4 byte)
- content
flag:是一个预留标识
length:表示消息号和消息内容的长度
protocol code:自定义消息号,通过次消息号选择相应的消息处理器,自然消息号是不能重复的,一个int表示范围足够使用
content: 消息内容,一个有序的数据的数组。protocol code和content都要在开发功能时定义在‘消息协议’文档中的,例如GameServer项目中的“消息协议.xls”
消息处理:
服务器收到客户端发来的消息,MsgDispatcher会根据其消息号选择对应的MsgProcessor进行处理。MsgProcessor会读取content做相应的处理。
Netty精粹之TCP粘包拆包问题
https://my.oschina.net/andylucc/blog/625315