计算社交应用程序项目中未读消息的最佳实践

时间:2019-07-14 11:20:38

标签: django postgresql redis

我有一个类似Instagram的项目。用户可以发送消息,分享故事。为每个用户计算和导出未读消息和新共享帖子的最佳实践是什么?我对此有一些想法:

1-unread_countunread_messagesnew_shared_related_post字段添加到用户模型,并且每次发生新事件时,将unread_count添加+1,当用户收到新消息或收到新帖子时,unread_count设置为0或减少适当的数字。在此方法中,我们还需要向用户模型添加last_seen_unread_msg字段,以便我们可以在需要时导出新的帖子/新消息。(我只是简单地解释了这一点,主要是指存储新消息和新的相关共享发布到用户模型的字段。此字段可以是models.JSONField或可以通过models.ManyToManyField来建立联系)

2-添加与每个用户相关的新模型以存储新消息和新的相关共享帖子,以便我们可以轻松拥有所需的一切,但数据库将更大。

3-将新消息或新的相关共享故事存储到Redis以快速缓存它们!每次发生新消息或新帖子时,我们都可以将它们添加到与用户相关的Redis中。计划2,但改为DB,我们将使用Redis)

我不是专业人士,因此,如果您有任何新想法或改进上述想法,请告诉我。

致谢

0 个答案:

没有答案