GOlang服务器使用CapnProto, Protobuf, RapidJson, SBE, FlatterBuff协议调研比较以及最后选择。

1.先排除RapidJson.

2.

参看CapnProto官方给出的图


给出的解释是SBE,FlatterBuff,和CapnProto相对于ProtoBuf最大的优点是0拷贝(不需要编码和解码过程)。

FlatterBuf和CapnProto采用随机存取。

SBE没有自己的SchemeLanguage采用XML,格式不美观。

3.过滤掉SBE后,发现CapnProto对Go的支持太弱,都是2015年可以跑的代码。现在跑不起来,要手动修改配置和代码搭建环境。

4.同样参考上图,CapnProto说这些序列化库的作者刚偏向于库的使用方向,FlatterBuff是游戏。

5.至此花了8小时选择FlatterBuff昨晚Golang游戏服务器的协议。Period.

猜你喜欢

转载自blog.csdn.net/LightUpHeaven/article/details/80418012