【SpringBoot 基础】实现一个简单的分布式定时任务(应用篇)
在Spring Boot应用中实现一个简单的分布式定时任务,可以使用@Scheduled
注解和@EnableScheduling
注解来创建定时任务。以下是一个简单的例子:
- 在Spring Boot主类上添加
@EnableScheduling
注解来启用定时任务。
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableScheduling
public class DistributedSchedulerApplication {
public static void main(String[] args) {
SpringApplication.run(DistributedSchedulerApplication.class, args);
}
}
- 创建一个定时任务的服务类,并使用
@Scheduled
注解来指定任务的执行计划。
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
@Service
public class ScheduledTaskService {
@Scheduled(fixedRate = 5000) // 每5秒执行一次
public void performTask() {
// 定时任务的逻辑
System.out.println("执行定时任务:" + System.currentTimeMillis());
}
}
以上代码将创建一个简单的定时任务,每5秒钟执行一次。这个定时任务可以在单个Spring Boot应用中运行,但不支持真正的分布式定时任务调度。要实现真正的分布式定时任务(多个实例同时执行任务),你需要一个外部的调度服务,如Quartz或Elastic Job。
评论已关闭