我应该只存储id到Redis,然后使用id查询SQL

本文关键字:id 查询 SQL 然后 Redis 存储 我应该 | 更新日期: 2023-09-27 18:01:36

如果我想在页面上显示最近的帖子'评论的X数量,我使用LPUSH存储id列表,然后使用LTRIM保持列表的一定大小。

然后我是否使用从LRANGE返回的id来获取帖子'评论的详细信息:

a) Redis使用MGET,我通过:

MGET comment.1。作者、comment.1。内容,comment.1。时间戳,comment.2。作者等

是否可以在Redis中存储所有的评论细节?

b) SQL数据库在查询中使用if id列表

我应该只存储id到Redis,然后使用id查询SQL

如果你想像那样单独存储字段,一个散列似乎比每个5个键更合适,即"注释"。"1"是键,子键为"作者"、"内容"等。然而,除非你有理由只想要id,否则我倾向于将整个东西存储为json或二进制的序列化块-然后你只需LRANGE拥有数据 -没有麻烦,并且最小的传输

为了减少带宽,我会使用像protobuf-net这样的东西来存储(尽管我可能有偏见),如果您需要二进制安全客户端,BookSleeve会做得很好。