今天 。我带大家更深层次的认识认识 Protobuf 。如果你对 Protobuf 的用法还不熟悉 。直接前往:developers.google.com/protocol-bu… 。
当对 Protobuf 有了基本的认识后 。就会明白了 Protobuf 序列化的数据会比 JSON、XML 传输效率更高 。
那为啥会高呢?本篇就带着这个问题一探究竟 。
看表面对于 JSON、XML 。为了便于数据传输时的可阅读性 。会保留数据的结构化信息 。举个 JSON 例子 。如下:
{"name": "laomiao","age": 18}复制代码
当发送该信息时 。接受方收到后就会明白 。这是个 “key/value” 形式的数据 。并且”name” 后是姓名 。”age” 后是年龄 。
那如何压缩该数据呢?
我们可以删除 “花括号”、“name”、“age” 以及其它的 “冒号”、“逗号”、“引号” 等结构数据 。
laomiao18复制代码
那这样删除了 。接收方怎么知道 。哪个是姓名?哪个是年龄?
删除 ”结构“只需要发送方和接收方都保留这份数据的 ”结构“ 就行 。发送方只发送数据 。接收方接收到数据后 。根据本地保留的 ”结构“ 去解析数据就 OK 。
假设 。该 “结构” 如下 。这不是真实存在的 。只是为了方便给大家描述 。
{name string 7age int 1}复制代码
【Protobuf 为啥比 JSON、XML 牛】通过该 ”结构“ 就可以知道:
推荐阅读
- lol深渊巨口怎么出装?
- 国宝大熊猫有哪些特征 熊猫是熊科还是猫科
- 想招聘厨师,请问上海比较大的几个劳务市场在哪?
- 关于牵挂的短信 送给我远方的朋友
- 英雄联盟大嘴如何?
- 本人现在有2000平米厂房,想开个工厂有没有合适的项目推荐?
- 十大经典玄幻小说 年度人气巅峰,读者看三遍不腻
- 人死亡后的恐怖瞬间)(死亡的感觉是什么样子 身体变化
- 在农村办个什么厂能用闲置人员做工?