FlatBuffers与protobuf性能比较

1. 什么是FlatBuffers
Google发布了FlatBuffers,一个跨平台,提供了C++/Java接口,注重性能和资源使用的序列化(Serialization)类库。
尤其是FlatBuffers更适用移动设备,他们要求更高的新能,更低的资源需求(内存、带宽、CPU等)。

1.1. 它的特点如下:
不需要打包/解包。它的结构化数据都以二进制形式保存,不需要数据解析过程,数据也可以方便传递。
省内存、性能好(见附录1)
强类型系统,在编译阶段就能预防一些bug的产生
跨平台(C++11/Java)

等等。


1.2. 和Protocol Buffers的不同之处
FlatBuffers和Protocol Buffers很像,他们的最大不同点是在使用具体的数据之前,FlatBuffers不需要解析/解包的过程。

1.3. 和JSON的不同之处

JSON作为数据交换格式,被广泛用户各种动态语言之间(当然也包括静态语言)。它的有点事易于理解(可读性好),同时它的最大的缺点那就是解析时的性能问题了。而且因为它的动态类型特点,你的代码可能还需要多写好多类型、数据检查逻辑。

---------------------------------------------------------------------------------------

Flatbuffers的idl的语法主要参考[http://google.github.io/flatbuffers/md__schemas.html ]

源代码在GitHub:https://github.com/google/flatbuffers

---------------------------------------------------------------------------------------

Protocol Buffers介绍

http://blog.csdn.net/program_think/article/details/4229773

http://www.docin.com/p-355526866.html



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值