用户发送消息记录顺序问题?

来源:7-23 IM系统的测试

鹏飞天下

2023-08-30

1、如果用户发送多条数据,咱们的处理是扔到mq中进行异步处理,那这样怎样保证客户端的数据按照我发送的顺序进行展示呢?
2、我看咱们架构图中是进行聊天记录持久化到数据库,但咱们代码中没有体现,是咱们课程没有设计到这一块吗?

写回答

1回答

Danny_Idea

2023-08-30

聊天消息的持久化这块,在最后的项目实战中会有介绍,是基于直播间聊天消息的场景介绍。

消息的存储主要是为了后续一些未读消息的拉取所使用的,可以结合场景选择不同的数据库去实现。(MySQL,tidb,es,mongodb,redis等均可)

关于消息顺序这个问题,一般是保证落库后的顺序性记录,实时推送的消息有序性无法严格保证。

消息拉取的有序性可以在消息存库的时候 使用一个seqid去记录下当前消息的序号,然后检索数据的时候 根据这个序号去排序。seqid的生成可以用Redis和MySQL去实现。

0
0

SpringCloudAlibaba高并发仿斗鱼直播平台实战

SpringCloudAlibaba高并发仿斗鱼直播平台实战

421 学习 · 344 问题

查看课程