我正在做一个社交网络网站项目。我已经创建了数据库和一切。帖子表有一个preference
列,它根据帖子从用户那里获得的点赞和评论以及帖子的创建时间来存储偏好值。要从 posts 表中检索用户主页的帖子,我正在使用 join 运行查询,该查询使用preference
column 排序。现在,假设我检索了 10 个要显示在帖子表上的用户的帖子,并且用户向下滚动,并且用户又发出了一个请求,以检索服务器的下 10 个帖子。
如果在这些请求之间,很少有其他用户创建新帖子或数据库中帖子的偏好值在这之间发生变化,现在如果我在服务器上运行第二个请求,则所有帖子都将用于第二个请求(即显示接下来的 10 个帖子),但由于数据库已更新,这意味着在第二个请求中,很可能在第二个请求中检索到前 10 个帖子中的少数几个。
我想知道如何避免这些重复的请求。当他们的数据库是动态的时,facebook 或任何其他社交网络如何在后端解决这个问题。