zoukankan      html  css  js  c++  java
  • thrift与protobuffer的区别

    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要方便很多。

  • 相关阅读:
    SharePoint 2010 新体验3 文档集
    Firebird 修改表名
    C++Builder XE7 up1 简单测试
    Firbird 将可 null 的列更新为 not null
    用delphiXE7 dbExpress Framework提供的功能获取数据表信息
    Linux的基本命令总结
    IOS 隐藏时间条
    最大流 ZQUOJ 10181 && POJ 1273
    最大二分匹配 匈牙利算法模板&&POJ 1469 COURSES
    新加坡第四天下午
  • 原文地址:https://www.cnblogs.com/mingaixin/p/4335333.html
Copyright © 2011-2022 走看看