gpt4 book ai didi

serialization - protobuf 版本之间的数据格式兼容性

转载 作者:行者123 更新时间:2023-12-04 15:36:46 26 4
gpt4 key购买 nike

我想知道 Protocol Buffer 的序列化数据格式是否在 protobuf 编译器和客户端库版本中保持不变。

换句话说,我是否需要使用相同的编译器版本来生成我的 Python、Java 和 C++ 类?这些客户端是否都需要使用相同版本的 protobuf 库?

This post有点解决我的问题,但它接受的答案特定于 OP 的 protobuf 版本。

最佳答案

是的,这几乎就是这个想法。只要遵循规范,您使用哪个库都无关紧要。请注意,相同的数据可以以略有不同的方式表示,例如字段顺序对客户端来说应该无关紧要,虽然客户端通常以升序写入字段,但明确要求客户端以任何顺序处理字段.我在这里要说的是,它可能不是以相同顺序排列的完全相同的字节,但它应该可以从任何客户端正常工作。

请注意,某些实现可能会提供附加功能(*咳嗽*,例如我的提供继承支持),主要仅用于该单个客户端。在那种情况下,我会 a: 希望这些特性在使用时很明显,并且 b: 它应该始终产生一个有效的 protobuf 流(你可以选择忽略这些字段,或者支持它们作为 bytes 目的是往返)。

关于serialization - protobuf 版本之间的数据格式兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6604929/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com