SpringBoot shedlock MongoDb锁配置

 配置mongo的表进行锁任务管理

maven依赖包

        <dependency>
            <groupId>net.javacrumbs.shedlock</groupId>
            <artifactId>shedlock-spring</artifactId>
            <version>2.5.0</version>
        </dependency>

        <dependency>
            <groupId>net.javacrumbs.shedlock</groupId>
            <artifactId>shedlock-provider-mongo</artifactId>
            <version>2.5.0</version>
        </dependency>

SpringBoot配置代码 

@Configuration
public class ShedLockConfig {
    @Autowired
    private MongoTemplate template;

    @Bean
    public LockProvider lockProvider(){
        MongoCollection<Document> mongo = template.getCollection("shed_lock");
        return new MongoLockProvider(mongo);
    }

    //并发的调度任务池,默认是单线程调度
    @Bean(destroyMethod="shutdown")
    public ScheduledExecutorService shedLockTaskExecutors() {
        return Executors.newScheduledThreadPool(20);
    }
}

 

posted @ 2021-05-22 15:40  茅坤宝骏氹  阅读(7)  评论(0)    收藏  举报  来源