问题遇到的现象和发生背景
java物联网项目,硬件设备使用mqtt上报数据,如果超过一段时间没上报状态,就认为离线,然后修改数据库的状态字段,现在是想用定时任务去实现,但是想看看有没有更好的方法。
我的解答思路和尝试过的方法
如果用rabbitmq的死信队列的话,设备上报了,往队列推送一个时间为xx分钟的消息,到时间了就消费,设置为离线。但是这里有个地方我不太懂,这个队列的消息能删除或者取消吗,不然的话还没到超时时间,设备又上报了,队列里又会推送一条过期时间为xx分钟的消息,应该是重置时间才对,想请教一下大家,说的不对的地方还请见谅