现在有一个用户收藏内容埸景,其设计如下
有三个数据 User (用户表), UserFavor (用户收藏表), Post (发布内容表)
UserFavor 是关联 User (用户表)和 Post (发布内容表),对应关系是 M:N
现有一个接口 GET:/post?limit=n(n>10) 要从 Post (发布内容表)查看 n 条记录的内容
这个可以传入用户的 ID 来查看 用户是否有收藏发布的内容如: GET:/post?limit=n&uid=User.id
这个接口里会返回 isFavor 状态来标识用户是否已收藏内容
问题来了
如果代码上实现的话就是先从 Post 取得 n 条数据 之后再遍历里面的 id 再查 UserFavor 来匹配用户的收藏
那数据请求就是 1+n 次
那在什么方案可以减少这个请求次数 但又不减 收藏的标识 实时性呢?