protobuf的优缺点

优点

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

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

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

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

缺点

  • 可读性差

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

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

相关推荐
来旺12 小时前
互联网大厂Java面试全解析及三轮问答专项
java·数据库·spring boot·安全·缓存·微服务·面试
摇滚侠12 小时前
Spring Boot 3零基础教程,WEB 开发 HTTP 缓存机制 笔记29
spring boot·笔记·缓存
cr7xin12 小时前
基于Session和Redis实现短信验证码登录
数据库·redis·缓存
creator_Li1 天前
缓存行Cache Line
缓存
机灵猫1 天前
Redis 在订单系统中的实战应用:防重、限流与库存扣减
数据库·redis·缓存
Southern Wind2 天前
Vue 3 多实例 + 缓存复用:理念及实践
前端·javascript·vue.js·缓存·html
在下木子生2 天前
SpringBoot基于工厂模式的多类型缓存设计
java·spring boot·缓存
Lu Yao_2 天前
Redis 缓存
数据库·redis·缓存
你不是我我2 天前
【Java 开发日记】MySQL 与 Redis 如何保证双写一致性?
数据库·redis·缓存
Jeled2 天前
Android 本地存储方案深度解析:SharedPreferences、DataStore、MMKV 全面对比
android·前端·缓存·kotlin·android studio·android jetpack