SpringCloud(第 046 篇)注解式Schedule配置定時任務(wù)棘利,不支持任務(wù)調(diào)度

SpringCloud(第 046 篇)注解式Schedule配置定時任務(wù),不支持任務(wù)調(diào)度

一、大致介紹

1沧侥、很多時候我們需要隔一定的時間去執(zhí)行某個任務(wù)可霎,為了實現(xiàn)這樣的需求通常最普通的方式就是利用多線程來實現(xiàn);
2宴杀、但是有時候這個任務(wù)還真得去處理一些非常復(fù)雜非常耗時的動作癣朗,那么在SpringCloud生態(tài)圈中,Scheduled不失為一種好的解決方案旺罢;
3旷余、不過我們這里介紹的Scheduled如果部署在多臺服務(wù)的話,那么每臺都會執(zhí)行主经,不支持任務(wù)調(diào)度荣暮;
4、若要支持任務(wù)調(diào)度的話罩驻,請回頭查看(第 010 篇)簡單 Quartz-Cluster 微服務(wù)穗酥,支持集群任務(wù)調(diào)度;

二惠遏、實現(xiàn)步驟

2.1 添加 maven 引用包

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <artifactId>springms-schedule</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    
    <parent>
        <groupId>com.springms.cloud</groupId>
        <artifactId>springms-spring-cloud</artifactId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    
    <dependencies>
        <!-- 訪問數(shù)據(jù)庫模塊 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

        <!-- web模塊 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- MYSQL -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
    </dependencies>

</project>

2.2 添加應(yīng)用配置文件(springms-schedule\src\main\resources\application.yml)

server:
  port: 8340
spring:
  application:
    name: springms-schedule  #全部小寫

2.3 添加定時任務(wù)類(springms-schedule\src\main\java\com\springms\cloud\task\ScheduledTasks.java)

package com.springms.cloud.task;

import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 定時任務(wù)類砾跃。
 *
 * @author hmilyylimh
 *
 * @version 0.0.1
 *
 * @date 2017/10/19
 *
 */
@Component
public class ScheduledTasks {

    private static final org.slf4j.Logger Logger = LoggerFactory.getLogger(ScheduledTasks.class);

    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");

    @Scheduled(fixedRate = 1000)
    public void reportCurrentTime() {
        System.out.println("當(dāng)前時間: " + dateFormat.format(new Date()));
        Logger.info("打印當(dāng)前時間: {}.", dateFormat.format(new Date()));
    }

    /**
     * 定時任務(wù)觸發(fā),操作多個DAO添加數(shù)據(jù)节吮,事務(wù)中任一異常抽高,都可以正常導(dǎo)致數(shù)據(jù)回滾。
     */
    @Scheduled(fixedRate = 5000)
    public void addMovieJob() {
        System.out.println("當(dāng)前時間: " + dateFormat.format(new Date()));
        Logger.info("當(dāng)前時間: {}.", dateFormat.format(new Date()));
    }
}

2.4 添加微服務(wù)啟動類(springms-schedule\src\main\java\com\springms\cloud\MsScheduleApplication.java)

package com.springms.cloud;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;

/**
 * 注解式Schedule配置定時任務(wù)透绩,不支持任務(wù)調(diào)度翘骂。
 *
 * @author hmilyylimh
 *
 * @version 0.0.1
 *
 * @date 2017/10/19
 *
 */
@SpringBootApplication
@EnableScheduling
public class MsScheduleApplication {

    public static void main(String[] args) {
        SpringApplication.run(MsScheduleApplication.class, args);
        System.out.println("【【【【【【 Schedule定時任務(wù)微服務(wù) 】】】】】】已啟動.");
    }
}

三、測試

/****************************************************************************************
 一帚豪、用戶微服務(wù)接口測試:

 1碳竟、注解:EnableEurekaClient
 2、啟動 springms-discovery-eureka 模塊服務(wù)狸臣,啟動1個端口莹桅;
 3、啟動 springms-provider-user 模塊服務(wù)烛亦,啟動1個端口诈泼;
 4、在瀏覽器輸入地址http://localhost:7900/simple/1 可以看到信息成功的被打印出來煤禽,說明用戶微服務(wù)正常铐达;

 5、在瀏覽器輸入地址 http://localhost:8761 并輸入用戶名密碼 admin/admin 進入Eureka微服務(wù)顯示在網(wǎng)頁中檬果,說明用戶微服務(wù)確實注冊到了 eureka 服務(wù)中娶桦;
 6、在瀏覽器輸入地址 http://localhost:8761/eureka/apps/springms-provider-user 可以看到自定義的 <metadata>信息以及用戶微服務(wù)的相關(guān)信息成功的被展示出來了;
 ****************************************************************************************/

四衷畦、下載地址

https://gitee.com/ylimhhmily/SpringCloudTutorial.git

SpringCloudTutorial交流QQ群: 235322432

SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接

歡迎關(guān)注,您的肯定是對我最大的支持!!!

<上一篇????????首頁????????下一篇>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末知牌,一起剝皮案震驚了整個濱河市祈争,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌角寸,老刑警劉巖菩混,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異扁藕,居然都是意外死亡沮峡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進店門亿柑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來邢疙,“玉大人,你說我怎么就攤上這事望薄∨庇危” “怎么了?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵痕支,是天一觀的道長颁虐。 經(jīng)常有香客問我,道長卧须,這世上最難降的妖魔是什么另绩? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮花嘶,結(jié)果婚禮上笋籽,老公的妹妹穿的比我還像新娘。我一直安慰自己察绷,他們只是感情好干签,可當(dāng)我...
    茶點故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拆撼,像睡著了一般容劳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上闸度,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天竭贩,我揣著相機與錄音,去河邊找鬼莺禁。 笑死留量,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播楼熄,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼忆绰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了可岂?” 一聲冷哼從身側(cè)響起错敢,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎缕粹,沒想到半個月后稚茅,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡平斩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年亚享,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绘面。...
    茶點故事閱讀 38,687評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡欺税,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出飒货,到底是詐尸還是另有隱情魄衅,我是刑警寧澤,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布塘辅,位于F島的核電站晃虫,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏扣墩。R本人自食惡果不足惜哲银,卻給世界環(huán)境...
    茶點故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望呻惕。 院中可真熱鬧荆责,春花似錦、人聲如沸亚脆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽濒持。三九已至键耕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柑营,已是汗流浹背屈雄。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留官套,地道東北人酒奶。 一個月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓蚁孔,卻偏偏與公主長得像,于是被迫代替她去往敵國和親惋嚎。 傳聞我的和親對象是個殘疾皇子杠氢,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,576評論 2 349

推薦閱讀更多精彩內(nèi)容