protobuf的优缺点

优点

  • 高效性:protobuf使用二进制进行数据编码,体积更小传输速度 更快,解析速度也更快

  • 跨平台:使用二进制编码进行传输,不同平台的编解码都可用 ,但如果是json这种直接以文本文件进行传输,跨平台之后就可能用不了,因此protibuf支持跨语言传输 ,如c++、java、python等,使得不同语言编写的程序之间可以方便的进行数据交换

  • 向后兼容性 :protobuf可以在不破坏旧数据结构的情况下更新数据结构,添加新的字段

  • 类型安全 :protobuf支持静态类型检查,可以在编译时捕获类型错误

缺点

  • 可读性差

  • 灵活性不足:相比于json的灵活格式,protobuf的消息类型需要在编译时静态定义,不支持动态添加和删除字段

  • 通用性差:json可以任何语言都支持,但是protobuf需要专门的解析库

相关推荐
趁你还年轻_1 小时前
Redis-旁路缓存策略详解
数据库·redis·缓存
数据艺术家.2 小时前
Java八股文——Redis篇
java·redis·缓存·面试·nosql数据库·nosql·八股文
用手手打人4 小时前
SpringBoot(七) --- Redis基础
数据库·redis·缓存
不超限4 小时前
Asp.Net Core基于StackExchange Redis 缓存
redis·缓存·asp.net
Never_Satisfied9 小时前
缓存控制HTTP标头设置为“无缓存、无存储、必须重新验证”
网络协议·http·缓存
apcipot_rain9 小时前
【计算机组成原理 第5版】白、戴编著 第三章多层次的存储器 题型总结2 cache部分
缓存·计算机组成原理
多多*1 天前
蓝桥杯国赛训练 day1
java·开发语言·数据库·redis·缓存·职场和发展·蓝桥杯
weixin_307779131 天前
使用Redis作为缓存优化ElasticSearch读写性能
redis·分布式·elasticsearch·缓存·架构
小小星球之旅1 天前
redis缓存常见问题
数据库·redis·学习·缓存
梁云亮1 天前
SpringBoot中缓存@Cacheable出错
spring boot·缓存