主键有必要使用缓存吗

2022-06-30 19:27:19 +08:00
 Kould

以主键作为条件获取数据类似 findById 方法这种,感觉好像走 mysql 主键索引也很快,貌似没有必要缓存?

1586 次点击
所在节点    Java
4 条回复
xiangyuecn
2022-06-30 20:00:32 +08:00
内存 跟 读盘 哪个快?但当你真需要优化的时候,优化的可就不是缓存了,是优化掉 mysql 本身
tramm
2022-07-01 08:26:11 +08:00
没必要, 使用缓存, 保证数据准确性的话, 又提升了复杂性了, 得不偿失
luomao
2022-07-01 10:05:45 +08:00
具体需要看你需求,你是打算缓存下来整个数据结构,然后在缓存中去查询内容么?还是单纯的想缓存每次的查询结果?
我认为 2 楼说的很好,没有必要徒增复杂度,如果仅为了减少数据库压力,可以加一层读缓存,第一次查询走 mysql ,第二次走缓存,依靠业务的对数据更新的敏感程度设置过期时间。
twing37
2022-07-01 13:09:21 +08:00
1. 三步走: make it run, make it right, make it fast 看你在哪.
2. 另外就是非得追究是否合适, 那需要去看他的内置缓存. 而 MySQL 的 QueryCache 很鸡肋.属于表范围的.也就是修改频繁的情况下.Cache 命中堪忧,在 8.0 已经废弃掉了.当然有一天如果做到行级缓存.那我认为是主键的情况下没必要加第三方的.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/863286

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX