xxl-job:阻塞处理策略
XXL-JOB是一个分布式任务调度平台。在XXL-JOB中,任务执行时存在阻塞处理策略,主要是为了在任务执行时防止资源被过度占用,保证系统的稳定性和安全性。
XXL-JOB提供了以下几种阻塞处理策略:
- "单机":默认策略,同一个任务在同一时间只会被同一个执行器执行。
"阻塞处理策略":
"阻塞处理策略":调度过来的任务执行时,如果执行器的队列中已有任务在执行,这时如果还有新任务进来,可以选择以下几种策略进行处理:
- "阻塞":默认策略,新任务将会被阻塞,等待正在执行的任务执行完成后再执行。
- "跳过":新任务不会执行,直接跳过。
- "排队":新任务会排队等待执行。
以下是一个任务配置阻塞处理策略的示例代码:
@XxlJob(adminAddresses = "http://127.0.0.1:8080/xxl-job-admin",
executorHandler = "demoJobHandler",
executorBlockStrategy = "DISCARD_LATER")
public void demoJob() throws Exception {
// 任务逻辑
}
在这个例子中,executorBlockStrategy = "DISCARD_LATER"
表示当执行器的队列中已有任务在执行时,新任务将被放弃执行。
在实际使用时,你可以根据实际需求选择合适的阻塞处理策略,并在任务注解中进行配置。
评论已关闭