第一次发帖还是提问贴,如有不妥还请诸多包涵,多多谅解。
目前有个接口任务,这个任务链比较长,里面包含了对外部系统的调用,异步查询外部任务的执行结果,文件上传,数据获取等,就是比较复杂,但是整个任务链属于一个任务,在数据库中有个对应的任务表维护任务的状态(运行中、超时、结束等)
目前的需求是想通过另一个接口对上面这个任务进行操作,需要在任意时刻停止该任务,然后更新表中的任务时刻状态。然后反馈给前端。
目前我的想法是在 redis 或者其他地方写入一个标识,在不同的耗时子任务后根据这个标识来停止任务,但是这么写比较繁杂,而且后续维护肯定也不太好,另一个想法(也是我请教另一个哥们的)是所有子任务维护到一个 map 中,做统一的判断启停,但是任务状态维护可能是个问题。
所以想问问各位大佬们,有没有别的比较优雅的方法,不胜感激!!!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.