关于MYQQ的消息设计问题, 打扰~~~
elmnd 2009-10-21 02:08:56 我要做一个局域网聊天工具,现在问题在于消息的设计问题, 具体有下面的需求:
1。客户端发送消息到服务端, 验证登陆是否成功。
2。对应的, 服务器对客户端发送消息, 返回是否成功登陆的消息。
3。客户端发送消息到服务器, 要求在线用户列表。
4。服务器返回在线列表消息。
//////////////////////////////////////
//服务器接收这种“大”信息(反序列化成为这个类型)
msgClientToServer
FLAG: 0, 1分别表示登陆信息还是列表信息
byte[] msg; //对消息的内容序列化
//客户端接收这种“大”信息
msgServerToClient
FLAG: 0, 1分别表示登陆信息还是列表信息
byte[] msg; //对消息的内容序列化
/////////////////////////////////////////////////////////
具体的实现就是根据标志位反序列化成为不同的类型(一收到数据后就先反序列化“大消息”一次, 再反序列化里面的“小”消息, 一共就2次了)。不过, 我总是觉得这样设计的话, 非常冗余, 而且感觉有BUG, 有哪位大大提供一个好方案吗?