我应该在哪里使用 protobuf

Where shall I use protobuf

我正在阅读 this article about protobuf,我想知道在项目中的什么地方使用它。我读过一些文章说 google 创建了 protobuf 来替换 XML,但据我所知,在 2008 年(第一个版本)JSON 已经存在了。

我搜索了更多,发现 an article 作者建议使用它而不是 JSON,但我仍然没有完全理解。

那我该用在什么地方呢?任何特殊情况,或者像 JSON 什么时候我想传输数据?还有其他场景吗?

只要您想 serialize/deserialize 您的数据,它就很有用。典型情况包括通过网络将您的数据发送给其他人、将其存储到磁盘或在执行异步过程时将其保存在上下文中。

这里简要解释一下protocol buffer,json和XML之间的主要区别: