老师,这里请教一个关于异步的问题

来源:9-2 消息通知模块的设计原理

三尺357159

2021-08-28

图片描述
由于接收消息和查询新消息的操作是异步的,也就是说谁先谁后还不一定,假如我在这五分钟的轮询中,Service执行完了,就是查询新消息先执行了,但是这时候新消息的数量为0,也就是没有新消息来,然后再到MessageTask接收消息的任务执行,这时候接收到了2条消息,那么这2条消息是不是在下一个五分钟的轮询才能查到,也就是说这2条新的消息等了10分钟才收到呢

写回答

1回答

神思者

2021-08-28

对,你理解的很正确。因为移动端网络信号有可能时好时坏,所以不能采用长连接的方式,只能用定时轮询查询数据。轮询间隔时间太密,会让后端系统和数据库负载增大,所以轮询时间拿捏好,不能太短也不能太长。

0
0

SpringBoot 在线协同办公小程序开发 全栈式项目实战

未来趋势型业务 + 前后端综合技术栈 + 惊艳的细节打磨

1798 学习 · 1915 问题

查看课程