一、FlatBuffers概述:
Google在今年6月份发布了跨平台序列化工具FlatBuffers,提供了C++/Java/Go/C#接口支持,这是一个注重性能和资源使用的序列化类库。相较于Protocol Buffers,其更适用于移动设备,FlatBuffers提供更高的性能以及更低的资源需求。
二、FlatBuffers特点:
- 不需要打包/解包。它的结构化数据都以二进制形式保存,不需要数据解析过程,数据也可以方便传递
- 省内存、性能好
- 强类型系统,在编译阶段就能预防一些bug的产生
- 跨平台(C++11/Java/Go/C#)
三、FlatBuffers和Protocol Buffers以及Json的比较:
- FlatBuffers的功能和Protocol Buffers很像,他们的最大不同点是在使用具体的数据之前,FlatBuffers不需要解析/解包的过程。同时,在工程中使用时,FlatBuffers的引用比Protocol Buffers方便很多,只需要包含两三个头文件即可
- JSON作为数据交换格式,被广泛用户各种动态语言之间&#x