mongodb数据库的设计问题

数据库用的是mongodb,后端用的是koa,用mongoose来连接数据库与后端。

用socket.io做一个聊天webapp,因为我是初始状态获取10条消息,本来设想是根据前端的page来跳过之前发的数据每次返回10条的。然后发的每一条消息都存进数据库。但是之后要获取历史消息的话,因为有新的消息加入数据库了,所以这个时候就不知道从哪里接着初始化的地方继续获取历史消息了

其实就是数据库的数据会动态变化。这种其实这一部分要怎么设计?

阅读 2.7k
2 个回答

根据时间喽,按前端消息队列中最早消息的时间,返回比这条时间更早的 10 条消息。

有两种方案:

方案一

请求的时候带上前端消息队列中最早消息的时间,返回比这条时间更早的 10 条消息

方案二

请求的时候带上前端消息队列中消息的数量,数据库跳过这个消息的数量,返回10条消息

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进