在 API 中几 KB 图片(如用户头像)应该放进 JSON 流中吗?
程序员文章站
2024-01-11 17:55:40
...
RT
设计客户端与服务端交互 API 中,那些琐碎细小的几 KB 图片应该如何处理?
设计客户端与服务端交互 API 中,那些琐碎细小的几 KB 图片应该如何处理?
- 在客户端中如何设计这些小图片的缓存机制?
- 在服务端如何处理这些小图片的存放位置?
- 那些不大不小的图片(大小10+KB) 又如何处理呢?
回复内容:
RT
设计客户端与服务端交互 API 中,那些琐碎细小的几 KB 图片应该如何处理?
- 在客户端中如何设计这些小图片的缓存机制?
- 在服务端如何处理这些小图片的存放位置?
- 那些不大不小的图片(大小10+KB) 又如何处理呢?
JSON 流?
你的意思是不是把那些图片直接 Base64 Encodeing 处理之后通过 JSON API 传递给客户端吗?
如果是这个意思的话,那么既有好处也有坏处,针对你的几个问题简单说一下:
一般琐碎的几KB的图片可以通过编码之后传输会比较快,当然如果量不上去的话这个差别也很小啦
很遗憾,如果你不是直接请求二进制文件的话,Data URI 是没有办法在客户端缓存的,每当文档变化的时候它们都必须重新下载
无论大小都是一样的存吧,或许会涉及到磁盘读写的性能?这方面我不太了解。
不大不小……这个要怎么定义呢?难道设计一个系统还需要先针对图片尺寸和大小分个上中下三档吗?我觉得静态资源单独做个 CDN 处理,API 返回请求 CDN 的地址给客户端就好了,目前最成熟的做法也就是这样了吧。至于那些特别小的东西,一般来说都是图标之类的吧,要么 sprites 处理一下,要么直接转成字体。
大于200字节都不要用base64了。请相信gzip的威力。
请相信二进制序列化之后的体积比二进制大了大约两倍。
上一篇: Oracle redo损坏的处理