【问题标题】:Any experiences with Protocol Buffers?有任何使用协议缓冲区的经验吗?
【发布时间】:2010-09-05 07:54:11
【问题描述】:

我刚刚浏览了有关 Google 的 protocol buffers 数据交换格式的一些信息。有没有人玩过代码,甚至围绕它创建了一个项目?

我目前在一个 Python 项目中使用 XML 来处理在文本编辑器中手动创建的结构化内容,我想知道对于将 Protocol Buffers 作为一种面向用户的输入格式的普遍看法。速度和简洁的好处似乎确实存在,但在实际生成和处理数据时有很多因素。

【问题讨论】:

    标签: python xml database protocol-buffers


    【解决方案1】:

    像PB这样的二进制格式的另一个缺点是,如果有一点错误,整个数据文件是不可解析的,但是使用JSON或XML,作为最后的手段,你仍然可以手动修复错误,因为它是人为的可读且内置冗余..

    【讨论】:

    • 你在说什么?我在 vtd-xml 上的其他帖子中获得了很多徽章和投票...如果它们是垃圾邮件,用户可以投反对票,我没有收到任何反对票...问题是您正在为那些做出决定人,但您似乎不了解帖子的实质
    【解决方案2】:

    根据您的简要描述,听起来协议缓冲区不合适。 “在文本编辑器中手工创建的结构化内容”这句话非常适合 XML。

    但是,如果您希望与未在组织外部共享的数据结构进行高效、低延迟的通信,那么协议缓冲区等二进制序列化可以提供巨大的优势。

    【讨论】:

      【解决方案3】:

      协议缓冲区旨在优化机器之间的通信。它们真的不适合人类互动。此外,格式是二进制的,因此在该用例中它不能替换 XML。

      我还推荐 JSON 作为最紧凑的基于文本的格式。

      【讨论】:

        【解决方案4】:

        如果您正在寻找面向用户的交互,请坚持使用 xml。目前得到了更多的支持、理解和普遍接受。如果是内部的,我会说协议缓冲区是个好主意。

        也许几年后,随着更多工具出现支持协议缓冲区,然后开始寻找面向公众的 api。在那之前...JSON?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-10-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-09-18
          • 1970-01-01
          • 1970-01-01
          • 2021-12-19
          相关资源
          最近更新 更多