springboot整合elastic job
阿新 • • 發佈:2021-01-13
技術標籤:spring
文章目錄
整合
pom.xml新增依賴
<dependency>
<groupId>com.cxytiandi</groupId>
<artifactId>elastic-job-spring-boot-starter</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>2.10.0</version>
</dependency>
application.properties 新增
elasticJob.zk.serverLists=localhost:2181
elasticJob.zk.namespace=user-sync
配置任務
程式碼:
@Component
@ElasticJobConf(name = "UserSyncJob",cron="0 0 0 * * ?",shardingTotalCount=5) // 每天零點執行
public class UserSyncJob extends SimpleJob{
@Override
public void execute(ShardingContext shardingContext) {
// 要執行的邏輯
}
}
啟動專案,當滿足cron定時任務時,執行execute方法。
其他
@ElasticJobConf 是最核心的註解
@ElasticJobConf(
name = "UserSyncJob", // 任務名稱
cron="0 0 0 * * ?", // 定時
shardingTotalCount=5) // 分別幾片
基本結構
ElasticJob 是個空介面,程式碼如下:
public interface ElasticJob {
}
下面有3個基本job:
SimpleJob
public interface SimpleJob extends ElasticJob {
void execute(ShardingContext var1);
}
ScriptJob 用的較少
DataflowJob 用於處理資料流