我可以和protobuf一起使用thrift rpc吗?

时间:2015-03-05 06:26:45

标签: protocol-buffers thrift thrift-protocol

作为主题,我想使用thrift rpc函数,而使用protobuf进行序列化,是否有任何项目已经完成此操作? 我不想使用thrift序列化的原因是在我看到生成的cpp文件之后,我发现它没有_in_place函数,这意味着它必须复制构造每个成员,而对于我的情况,我把所有的char *等都分配给了其他地方。

1 个答案:

答案 0 :(得分:3)

你可以这样做的唯一方法是声明一个包含大字节blob的Thrift消息,然后你将其解析为Protobuf。但是,这需要额外的副本,这会使你失去目的。

请注意,Google刚刚发布了GRPC,这是Protobufs的RPC协议。如果您要开始一个新项目并且想要使用Protobuf RPC,请使用它。

您可能也对Cap'n Proto感兴趣,{{3}}是一个专门避免复制的序列化和RPC系统。

(披露:我是Cap'n Proto的作者,以及Google的大部分开源Protobuf代码,但我与GRPC无关。)