gpt4 book ai didi

mysql - 每次 COUNT() 评论 vs 在 count_comments 列中缓存 vs 使用另一种类型的缓存

转载 作者:行者123 更新时间:2023-11-30 22:42:52 27 4
gpt4 key购买 nike

我有一个共同的疑问。

猜猜我正在创建一个包含帖子的社交网络或博客,并且每个帖子都有评论。

如果我想对帖子列表进行分页和过滤并显示每个帖子的评论量

我是否应该在我的帖子表中添加一个 count_comments 列(就像 WP 所做的那样)并在那里缓存评论量(即,如果有人删除了 count_comments 列中的评论 sub 1,则每次有人发表评论时都会添加 1)

我是否应该执行 SUBSELECT 来计算每次评论的数量,然后用另一种形式或缓存来缓存结果

或者您有什么建议?

最佳答案

简而言之:两者都可以工作,并且两种变体各有优缺点。

您几乎肯定会对这两种方式都有争论。

如果您经常需要评论计数,并且需要大量系统/应用程序资源才能通过简单的 sql 语句获取该值(例如,按该值排序可能会很痛苦),请像 WordPress 那样将值存储在一个字段中是一种方法。

如果您不经常需要评论计数,和/或不需要大量资源来获取值(SELECT COUNT(*) FROM yourcommenttable WHERE yourpostid = whatever should'对于大多数系统来说这太难了),您可能会受益更多,同时避免使值与帖子中的实际评论保持同步的问题。

关于mysql - 每次 COUNT() 评论 vs 在 count_comments 列中缓存 vs 使用另一种类型的缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30630593/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com