用户发送消息记录顺序问题?
来源:7-23 IM系统的测试

鹏飞天下
2023-08-30
1、如果用户发送多条数据,咱们的处理是扔到mq中进行异步处理,那这样怎样保证客户端的数据按照我发送的顺序进行展示呢?
2、我看咱们架构图中是进行聊天记录持久化到数据库,但咱们代码中没有体现,是咱们课程没有设计到这一块吗?
写回答
1回答
-
Danny_Idea
2023-08-30
聊天消息的持久化这块,在最后的项目实战中会有介绍,是基于直播间聊天消息的场景介绍。
消息的存储主要是为了后续一些未读消息的拉取所使用的,可以结合场景选择不同的数据库去实现。(MySQL,tidb,es,mongodb,redis等均可)
关于消息顺序这个问题,一般是保证落库后的顺序性记录,实时推送的消息有序性无法严格保证。
消息拉取的有序性可以在消息存库的时候 使用一个seqid去记录下当前消息的序号,然后检索数据的时候 根据这个序号去排序。seqid的生成可以用Redis和MySQL去实现。00
相似问题