facebook的thrift和Google的Protobuf

thrift可以作为高性能的通信中间件使用,它支持数据(对象)序列化和多种类型的RPC服务。

Protobuf是一个数据序列化框架,支持数据结构化一次可以到处使用,甚至跨语言,通过代码生成工具可以生成不同版本源代码,甚至可以在使用不同版本的数据结构进程间进行数据传递,实现数据结构的前后兼容;

注意:Protobuf是一个序列化框架,它不支持RPC,它仅仅是数据序列化框架,和thrift不是一个层面的,虽然thrift中包含数据序列化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ThriftProtobuf都是用于进行通信传输的工具。Thrift是一个跨语言的远程服务调用框架,支持多种语言,如C++, Java, Python等。而ProtobufGoogle开发的一种高效的数据序列化格式,同样也支持多种语言。 Thrift的使用流程如下: 1. 定义thrift文件,该文件定义了数据结构和接口。可以使用IDL语言来描述。 2. 使用thrift编译器生成目标语言的代码。比如使用thrift --gen cpp company.thrift命令可以生成C++的代码。 3. 在代码中实现业务逻辑,并调用thrift生成的代码来进行通信操作。 4. 在服务器端,监听指定的端口并处理客户端发送的请求。 5. 在客户端,创建thrift的客户端实例,调用生成的代码中的接口进行远程调用。 与Protobuf相比,Thrift在使用上有一些区别。Thrift支持更多编程语言,而Protobuf主要支持C++、Java和Python。另外,Thrift在通信协议方面更灵活,可以支持多种协议,如二进制、压缩、JSON等。而Protobuf主要使用二进制协议进行数据传输。 总的来说,ThriftProtobuf都是用于进行通信传输的工具,但在实际使用中需要根据具体的需求和技术栈选择合适的工具。 [2 [3<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [C++ thrift详细教程 及和Protobuf对比](https://blog.csdn.net/zsk4232000/article/details/50353777)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值