首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
beego
xmpx310
V2EX  ›  Go

公司现有一个 go 项目,接口 response 过大,准备将原来的 json 格式转用 protocol buff 提高传输效率,遇到的问题是现有 interface{}接口类型的数据如何转 pb 兼容编码

  •  
  •   xmpx310 · 7 天前 · 1311 次点击
    9 条回复    2020-03-26 16:00:07 +08:00
    xkeyideal
        1
    xkeyideal   7 天前
    []byte + 类型枚举?
    kaifang
        2
    kaifang   7 天前
    要不看下,gin 怎么实现的? https://gin-gonic.com/zh-cn/docs/examples/rendering/
    xkeyideal
        3
    xkeyideal   7 天前
    补充一下,还可以用 pb 的 oneof 字段,了解一下
    lasuar
        4
    lasuar   7 天前 via Android
    pb3 有个 any 类型,oneof 也可以,前者更通用
    123444a
        5
    123444a   6 天前 via Android
    反射呀,有啥子问题,不解
    scnace
        6
    scnace   6 天前 via Android
    any ?
    reus
        7
    reus   6 天前
    json 压缩一下应该和二进制编码差不了多少。
    xkeyideal
        8
    xkeyideal   6 天前
    @reus 手上有个项目,pb vs json gzip 差距还是不小的,明显 pb 在 response 的性能上有优势
    tcfenix
        9
    tcfenix   6 天前
    只要你不用 encoding/json
    其他的一些库,比如生成型的,或者虽然是反射,但是可以缓存 encoder 的 jsoniter 这些性能都跟 pb 差不多

    楼主不妨多给点讯息,比如调用端是你在维护,还是其他地方?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2304 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 18ms · UTC 16:24 · PVG 00:24 · LAX 09:24 · JFK 12:24
    ♥ Do have faith in what you're doing.