首页 新闻 搜索 专区 学院

socket的小疑问

0
[已关闭问题]

我们公司的网页游戏的聊天系统用socket做,以前没用socket做过项目,比如ID是1的玩家要在世界频道里说一句话,那有3个数据(ID,频道,话),要把这么3个数据传输到服务器端,我的想法是先把数据流转换成字符串比如"<e a=\"1\" b=\"1\" c=\"说话的内容\" />",然后把他转换成xelement类型,然后再解析,这样的思路可以吗,好像XElement.Parse()的效率挺慢的

拖鞋王子的主页 拖鞋王子 | 初学一级 | 园豆:51
提问于:2010-03-02 11:24
< >
分享
其他回答(3)
0

如果要效率搞,当然是二进制效率最高。我的Hubble.net 开源项目中有封装好的TCP 类,你直接抄过去用就可以了,速度很快。

http://hubbledotnet.codeplex.com/

在 hubble.framework/Net 下

eaglet | 园豆:17119 (专家六级) | 2010-03-02 12:03
呵呵...hubble学习中ing...
支持(0) 反对(0) 西越泽 | 园豆:10633 (专家六级) | 2010-03-02 12:30
0

具体看对性能上的要求,你当然可以不采用XML,而自己定义协议,可能这样的字符串最短,但要考虑开发效率及扩展性。

一般的做法是,采用XML定义,先压缩,后传输,到另一端先解压,再解析

查尔斯 | 园豆:3832 (老鸟四级) | 2010-03-02 12:29
0

我们通常的做法是:,采用XML定义,先压缩,后传输,到另一端先解压,再解析

另外注意文件传输采用二进制方式。

风影极光 | 园豆:1573 (小虾三级) | 2010-03-02 14:29
0

建议用JSON定义 {name:"奥巴马",channelId:1,content:"我真是个怀具"}

呵呵,我喜欢JSON

Aowind | 园豆:195 (初学一级) | 2010-03-03 14:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册