我只是最近刚开始研究Vc++。
api确实海量,不过从别人的代码里找点东西出来发现也可以实现了,比如csocket+CSocketFile+CArchive看见他是建立一个msg结构,然后序列化serlization后发送,有点类似amf的直接对象通讯了。不过我只浏览了一下客户端。看到他发送数据的数据结构都有标识字段,估计服务端就是通过标识来区分客户端。个人觉得这样的做法比较直观?(说白了就是比较好用),但是本人也没有服务端开发的经验。不知道这样的做法是不是效率很差另外很容易数据出错(我不太喜欢粘包这种词语)。
或者说是否可以用这种方式把通讯协议也改成长度+id+类型+内容指针的做法,要改怎么做比较好。希望大家给点建议。另外iocp说是最高效率的网络底层,但是自己写底层估计线程安全之类的问题又是一大堆,应该大公司都有自己的lib吧。所以我也不敢用,或者说mfc里也不知道怎么用。另外如果效率低,是指代并发数小还是系统耗费大,到底差别有多大。(实际应用上单台服务器的承载)

解决方案 »

  1.   

    如果没几个人,就csocket+CSocketFile+CArchive这就够啦
      

  2.   

    如你现在的模型,一台服务器,同时在线200人是肯定没有问题的,csocket+CSocketFile+CArchive绝对够用了
      

  3.   

    楼主开发游戏,要不要语音视频引擎的,参考:http://www.anychat.cn/faq/,可以实现游戏玩家之间互相语音、视频交流,专们为游戏设计的。