1.cocos本身在cpp框架中是提供了ws的
2.cocosjs版本在web上必然也是提供了ws的
3.网络操作想跑起来,ws只是一个基础,有了连接以后需要解决数据序列化的问题
4.如果选择二进制协议,首先ByteBuffer跑不掉,然后优先考虑使用protobuf。最终一套开一块
dcodeIO库可以搞定,后期有空了可以试试pb3自带的js,不过看起来只能在node环境下用。
5.服务器在github上有大神手撸的cpp解码websocket协议相关代码,不过个人觉得肯定有缺陷的,使用成熟一点的库会更好,这里首选websocketpp。将来万一还是不行,就直接换java php c# go之类的提供的ws标准库的语言。不在这些通用标准的细节上折腾,尽量使用工业化、成熟的组件。
整理一下思路:
服务器应该有一个ws网关,用来监听ws端口,接受客户端发起的ws链接,并保持心跳。ws网关不直接处理ws网络数据,而是转发给内网实际的模块去。