数据库挂了,任务怎么处理

后台任务有三个状态,开始->正在执行->完成

假设任务执行完毕后,将要更新状态为“完成”时,此时数据库挂了怎么办?

只能等数据库恢复后人工修改状态吗?

看你们是怎么做的,

如果整个任务的业务处理和任务状态修改(最少正在执行以及结束)放到一个事务里面,你这时候数据库挂了,实际上任务等同于没有执行,数据库恢复以后,继续跑任务即可;

如果不是在一个事务里面,那就要考虑重复执行任务的数据操作了;除非是多次重试都失败,不然一般不需要人为参与

数据库挂了  那这个时候 你任务执行失败  你可以try catch  然后存储在你的缓存中(定时向库中修改状态,一直到操作成功)  等数据库可以了 再存储