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

为什么用redis缓存最新的N条评论,存的只是ID,不把评论内容存起来

为什么用redis缓存最新的N条评论,存的只是ID,不把评论内容存起来

PHP
忽然笑 2019-03-06 04:44:19
假设mysql数据库评论表有很多个字段,比如:ID、时间、内容、评论人等这些字段。在用redis缓存时,为什么在网上有人说只要用list数据类型存ID就可以了。这样的话,从redis获取到评论ID后,不也还要再去mysql表里查询每条评论ID的具体内容吗?
查看完整描述

4 回答

?
隔江千里

TA贡献1906条经验 获得超10个赞

没有为什么 内存空间与响应时间的取舍考量而已 你愿意把评论内容存起来也完全可行啊
在这个场景下redis就是起到一个空间换时间的作用,你不愿意用更多的空间就只存ID,内存够用或者体量不大的情况下肯定是把整个内容存起来更有效率。

查看完整回答
反对 回复 2019-03-18
?
Qyouu

TA贡献1786条经验 获得超11个赞

目前我们这边对这种问题的实践 ……
某些追求性能的场景,我们直接把整个返回的 JSON 全塞到 Redis 里也都是常规操作。
不存在什么只存 ID 的说法。

要有自己的思考和判断。

Update at 2018.12.29:
服了这问题。。。
A. Redis 当数据库用
B. Redis 当数据库数据的缓存用
C. Redis 当数据库数据的索引 ID 的缓存用
D. Redis 不用

我以为这问题是讨论这几种用法(当然是都可以用啊)……
结果题主居然问,为啥用 ID 查,能比用条件查快???
我的天,用正整数+主键索引 的 ID,不比用一堆判断条件查出来的快,还要 ID 干啥???

查看完整回答
反对 回复 2019-03-18
  • 4 回答
  • 0 关注
  • 906 浏览

添加回答

举报

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