现在项目中有个业务有默认的物品标签列表,目前放到一个json配置文件中,然后读取配置文件,返给前端。
现在有个问题,这个json配置文件的内容是否有必要缓存到redis中。如果每次直接读取配置文件的话每次都有一次本地磁盘io操作;但是如果放到redis话,就每次有一次远程网络访问io操作。
所以问题是,是否有必要redis缓存这个配置文件?
现在项目中有个业务有默认的物品标签列表,目前放到一个json配置文件中,然后读取配置文件,返给前端。
现在有个问题,这个json配置文件的内容是否有必要缓存到redis中。如果每次直接读取配置文件的话每次都有一次本地磁盘io操作;但是如果放到redis话,就每次有一次远程网络访问io操作。
所以问题是,是否有必要redis缓存这个配置文件?
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答884 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
这玩意儿没有 Profiling 的话只能是纸上谈兵。
一般来说这种单纯的把整个文件返回回去的,磁盘都是优于网络的。不过跟磁盘性能与网络性能都有很大关系,最好你自己做压测对比一下指标。
另外如果你这个 JSON 文件本身很大、且读取很频繁的话,完全可以遵循 HTTP 协议本身提供的缓存机制来实现加载,这样不用每次请求都返回完整的文件内容了。