设计方案:倒计时执行任务以及任务中断

刚才开了一个脑洞,有一个需求是一个比较重要和严重后果的操作,需要有反悔时间三十秒,场景如下:

调用一个接口(或点击一个按钮)之后,会删除当前电脑所有文件(或删除数据库中的所有数据),

但有三十秒的反应时间(倒计时),在倒计时过程中,有一个取消接口(或取消按钮),

点击之后,当前倒计时取消,结束任务,不会删文件或者删库

 

思路如下,

最开始准备用线程sleep来做,休眠三十秒,然后让另一个接口来阻断线程,受限于我的线程知识面,这个方案被搁置了

 

后来我想到用一个中间件来控制当前操作流程是否中断,在程序中redis中间缓存是一个不错的选择

流程图:

设计方案:倒计时执行任务以及任务中断_第1张图片

你可能感兴趣的:(方案设计)