为什么要使用protobuf?
使用protobuf的原因肯定是为了解决开发中的一些问题,那使用其他的序列化机制会出现什么问题呢?
(1)java默认序列化机制:效率极低,而且还能不能跨语言之间共享数据。
(2)XML常用于与其他项目之间数据传输或者是共享数据,但是编码和解码会造成很大的性能损失。
(3)json格式也是常见的一种,但是在json在解析的时候非常耗时,而且json结构非常占内存。
但是我们protobuf是一种灵活的、高效的、自动化的序列化机制,可以有效的解决上面的问题。
如何使用protobuf
protobuf这么优秀使用起来也是非常的简单,我们可以给出其主要的三个步骤,然后使用一个基本的案例去实现一下。
(1)定义.proto文件:我们在这个文件中描述我们序列化的信息,类似于bean类。
(2)根据.proto生成对应的类文件,上面这个proto就像是一个模板,现在我们要根据这个模板创建出一个java类。
(3)序列化。
有了这个基本的步骤我们我们就具体去实现一下:
下载安装protobuf
第一步:下载解压
我的电脑是windows10,因此这里给出在windows下的使用,linux下面使用我也将在后续文章推出。我们首先下载protobuf(github上搜索protobuf,有各种语言可供选择)。选择protoc-3.9.0-win64.zip。下载完成之后解压到D:/protobuf目录下面就好了。
第二步:配置环境变量
也就是将D:protobufprotoc-3.9.0-win64in配置到path环境变量里面。
第三步:验证是否安装成功
最后我们可以在cmd中输入protoc –version验证一下,是否成功。
OK,到这里我们就安装好了。