博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
thrift与protobuffer的区别
阅读量:5736 次
发布时间:2019-06-18

本文共 807 字,大约阅读时间需要 2 分钟。

thrift由facebook出品,protobuffer由google出品;

下面对比一下这两个的区别。参考:http://zhidao.baidu.com/link?url=yNLBeHhWokfwB677UZHoyv4vLyPOZEEQypUMiX__YIhp5E7UmpvIWTArKPMab32xj5gkRo4a6CXoZ1nxore82kXyOzfXdaRRhOAPynxYmB7

1)Thrift: 支持的语言更广泛一些c++, java, python,ruby, csharp, haskell, ocmal, erlang, cocoa, php

    protobuf 目前还是只支持c++, java, python

2)Thrift提供的功能更丰富一些: Thrift提供了简单的RPC构架(其实不简单了, block, nonblock的都有了…..) 

    protobuf好像一心一意做好自己的事情,只提供了序列化和反序列化的功能。

3)Thrift支持多种协议格式. Thrift的代码实现,有专门的TProtocol和TTransport抽象,相互配合,可以实现多种协议,方便集成各种传输方式。至少目前Thrift就能使用json作为序列化协议。 

protobuf只安心一种协议,并下决心把这个格式做好。输入输出也是标准的stream. 

4)thrift目前不支持Windows平台 

     protobuf没有这个问题,提供了visual studio的项目文件,可以很顺利的在windows平台下编译。

5)thrift侧重点是构建夸语言的可伸缩的服务,特点就是支持的语言多,同时提供了完整的rpc service framework,可以很方便的直接构建服务,不需要做太多其他的工作。

相同点:

数据类型相对固定的情况下,不论是thrift还是protobuf都会比直接处理xml要方便很多。

转载地址:http://ztgwx.baihongyu.com/

你可能感兴趣的文章
Nginx反向代理1--基本介绍-虚拟主机
查看>>
${pageContext.request.contextPath}
查看>>
java中循环的不同终止方式
查看>>
【测试基础】为人所知的那些事
查看>>
webpack4 系列教程(十二):处理第三方JavaScript库
查看>>
第一部分 Python如何运行
查看>>
图片嵌入-大容量的信息隐藏算法
查看>>
NAND flash和NOR flash的区别详解
查看>>
《小学生之噩梦》 用户规格说明书
查看>>
kaldi特征处理
查看>>
Android 防止控件被重复点击
查看>>
POJ3077 Rounders
查看>>
uva 712 S-Trees
查看>>
<botton>与<input type="button">的区别
查看>>
A Tour of Go Exercise: HTTP Handlers
查看>>
【alpha阶段】第八次Scrum Meeting
查看>>
iOS 判断输入是否全是空格
查看>>
认证客户端的链接与socketserver实现并发
查看>>
为什么选择.NETCore?
查看>>
15总结。(转)
查看>>