[xuxueli/xxl-job]执行任务过程中,关掉任务程序,后台显示一直进行中

2024-05-15 421 views
5

执行任务过程中,我把处理任务的JobHandler Application 强制停止掉了,但是后台好像没有超时时间,一直显示进行中,这个怎么解决。。。。 我们任务处理JobHandler 程序 最长运行60秒,调度我设置每2秒启动一次。 我发现,有些任务没有回调时,后台一直显示进行中,而且没有批量处理的选项,刚执行了2个小时,后台执行中的任务 300多了....不知道什么原因,怎么解决

回答

8

你好,目前任务状态依赖任务回调,执行器不回调情况下任务状态不会变化的。 不过,TODO中已经排期了任务超时时间的特性,后续将会排期实现啊。

3

还有一个问题,每个任务最快也每秒启动一次是吧? 我们的程序是看订单的数量来动态设置处理任务的数量,这个有没有好的解决办法? 比如 待处理的订单数量 大于100 时 ,同时启动 20个线程来处理,小于100 大于 50时 10个线程 , 小于 50 时 5个线程来.... 这里的每个线程我想一个JobHandler 来处理,这个怎么实现呢?

2

我看了 动态分片,但是找不到好一点的列子。

6

或者我先启动一个任务,然后能不能任务里面动态启动我的另一个任务

7

调度中间件不推荐过度定制,否则会降低通用性。 推荐在jobhandler里,动态创建子线程并发处理数据,处理结束后销毁子线程即可。