Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Protocol buffers 什么';协议缓冲区和扁平缓冲区之间的区别是什么?_Protocol Buffers_Flatbuffers - Fatal编程技术网

Protocol buffers 什么';协议缓冲区和扁平缓冲区之间的区别是什么?

Protocol buffers 什么';协议缓冲区和扁平缓冲区之间的区别是什么?,protocol-buffers,flatbuffers,Protocol Buffers,Flatbuffers,两者都是序列化库,由Google开发者开发。他们之间有什么大的区别吗?转换代码以使用是否需要大量工作?我在这里详细比较了几种序列化系统,包括Protobufs和FlatBuffers: 然而,比较更侧重于比较三个新的“零拷贝”序列化系统,并且主要将Protobufs作为参考点。另外,我是Cap'n Proto的作者,也是Protobufs v2的作者(我在谷歌负责开源Protobufs),所以这种比较可能有偏差 请注意,Protobufs在谷歌自己的服务中使用,而FlatBuffers更多的是

两者都是序列化库,由Google开发者开发。他们之间有什么大的区别吗?转换代码以使用是否需要大量工作?

我在这里详细比较了几种序列化系统,包括Protobufs和FlatBuffers:

然而,比较更侧重于比较三个新的“零拷贝”序列化系统,并且主要将Protobufs作为参考点。另外,我是Cap'n Proto的作者,也是Protobufs v2的作者(我在谷歌负责开源Protobufs),所以这种比较可能有偏差


请注意,Protobufs在谷歌自己的服务中使用,而FlatBuffers更多的是一个实验项目,据我所知,它在内部还没有被广泛采用。

嗨,瓦尔达先生,非常感谢您的评论!感谢这些非常有用的开源工具!作为一个普通用户,我在项目中使用了很棒的
协议缓冲区。在查看了有关
flatbuffer
的新闻和
Github
中的项目后,我发现它就像你说的那样是实验性的,不是很热门,所以我还搜索了
PB
FB
之间的性能比较,并发布了这个问题。谢谢你的比较!这意味着很多!我非常同意你文章中的
基准测试部分
这些库的相对性能很大程度上取决于用例。它可能没有被广泛采用,但基准测试看起来相当不错。开源游戏库cocos2d-x现在正在成功地使用它。我认为Flatbuffer已经通过了实验测试phase@KentonVarda,自2014年6月以来,是否有任何与FlatBuffers进行比较的新更新?据报道,Facebook在其Android应用程序中使用了FlatBuffers。@KentonVarda:嗨,Kenton,如果您能提供此答案的更新,我将非常高兴,由于
flatbuffers
最近被大量使用,例如在tensorflow lite中,我们有tensorflow protobuf文件,但也有尺寸较小的tensorflow lite flatbuffers,了解其优缺点将有助于理解,哪一个更适合于特定的用例,也可以与Cap'n Proto进行比较,尤其是针对移动设备的flatbuffers,谢谢!