请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

消息序列

老师,我有个问题,如果我在逻辑层把每条消息都加上了seq序列号,但是前端不能保证在一段时间内所有消息都收到呀,比如message1-10,前端没收到7,那这时怎么办呢?

正在回答 回答被采纳积分+3

1回答

conan老师 2023-06-11 18:09:17

我们异步线程的顺序是:1.发一个mq消息。2.存离线 3.ack给发送端 4.发送给自己的同步端 5发给对方

任何一步失败,发送端或者接收端都会少一个ack,少一个ack就会触发重发。比如7这个消息一段时间内没有收到就触发重发。


0 回复 有任何疑惑可以回复我~
  • 老师我的意思是前端如何保证能准确按1-10显示呢,我假如目前1-10除了7都收到了,那是不是7在最后显示?这不就保证不了有序性了
    回复 有任何疑惑可以回复我~ 2023-06-11 20:40:07
  • 有seq可以排序呀  收到7再吧7插入到6后面就行了
    回复 有任何疑惑可以回复我~ 2023-06-11 20:41:00
  • 提问者 weixin_慕盖茨7092499 回复 conan老师 #3
    可是那假如7这条消息迟迟没有来,其余消息就不显示了嘛,一定要等到所有消息来了再排序?不应该是收到多少消息就直接显示了
    回复 有任何疑惑可以回复我~ 2023-06-11 20:45:11
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信