[redis] 当要获取很多 key 的 value 时, 使用 pipe+mget 会比单个 mget 好吗?

2021-01-12 15:50:44 +08:00
 melonux
比如我要从 redis 获取 1 万个 key, 但并不需要事务, 也不希望阻塞住 redis 服务其他人. 所以我把这些 key 分为 1 千组, 每组使用 MGET, 并将这些 MGET 组织在一个 pipeline 中提交. 那么这样做会比发起单个请求全部 key 的 MGET 要好吗? 还是二者对 redis 是等价的?
1269 次点击
所在节点    程序员
2 条回复
SmiteChow
2021-01-12 16:52:03 +08:00
只是 get 用 mget 即可

pipe 面向的场景是批量-混合-命令

两者都需要注意 redis 内存别爆了,因为批量返回前所有 response 都驻留在内存中
GGGG430
2021-01-12 17:17:58 +08:00
感觉你这种情况 mget 就行, 另外应该监控网卡流量别打爆了

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

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

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

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

© 2021 V2EX