为了账号安全,请及时绑定邮箱和手机立即绑定

将 golang map[string]interface 存储到数据存储中的最佳方式

将 golang map[string]interface 存储到数据存储中的最佳方式

Go
长风秋雁 2021-10-11 10:49:29
场景:我从 MongoDB 读取了 300 KB - 6.5 MB 的任意 JSON 大小。由于它是非常任意/动态的数据,因此我无法在 golang 中定义结构类型,因此我使用了map[sting]interface{}类型。并且使用encoding/json的Unmarshal方法解析 JSON 数据字符串。一些类似于Generic JSON with interface{} 中提到的内容。问题:但问题是将字符串 json 解析为 .json 需要更多时间(大约 30 毫秒到 180 毫秒)map[string]interface{}。(对比php使用json_encode/decode/igbinary/msgpack解析json)问题:有没有办法对其进行预处理并存储在缓存中?我的意思是解析字符串map[string]interface{}并将其序列化并存储到某个缓存中,然后当我们检索它时,不应该花费太多时间来反序列化并继续执行。注意:我是 golang 的新手,任何建议都非常有用。谢谢更新:使用序列化Gob,binary内置的包装和Msgpack实施Golang包都已经尝试过。没有运气,反序列化的时间没有改善。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 451 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信