elastic job之流式作業

2021-09-21 15:00:13 字數 1610 閱讀 4235

流式作業對應於dataflowjob介面,其定義如下:

/**

* 資料流分布式作業介面.

* * @author zhangliang

* * @param 資料型別

*/public

inte***ce

dataflowjob

extends

elasticjob

流式作業,每次排程觸發的時候都會先調fetchdata獲取資料,如果獲取到了資料再排程processdata方法處理資料。dataflowjob在執行時有兩種方式,流式的和非流式的,通過屬性streamingprocess控制,如果是基於spring xml的配置方式則是streaming-process屬性,boolean型別。當作業配置為流式的時候,每次觸發作業後會排程一次fetchdata獲取資料,如果獲取到了資料會排程processdata方法處理資料,處理完後又繼續調fetchdata獲取資料,再調processdata處理,如此迴圈,就像流水一樣。直到fetchdata沒有獲取到資料或者發生了重新分片才會停止。**實現部分可參考資料流執行器 com.dangdang.ddframe.job.executor.type.dataflowjobexecutor。以下是dataflowjob的乙個簡單實現,該實現中每次排程觸發時都會連續排程processdata十次。

public

class

mydataflowjob

implements

dataflowjob else

loop_counter

.set(current);

system

.out.println(thread

.currentthread()

+"------------current--------"

+ current);

if (current >

loop_times) else }

private

string

getdata(int

shardingitem)

@override

public

void

processdata(shardingcontext

shardingcontext,

list

data)

}

流式作業的配置使用配置,上面的流式作業對應的配置如下:

:dataflow

id="mydataflowjob"

class="com.elim.learn.elastic.job.mydataflowjob"

registry-center-ref="regcenter"

cron="0 0/2 * * * ?"

sharding-total-count="2"

sharding-item-parameters="0=廣州,1=深圳"

failover="true"

overwrite="true"

streaming-process="true"

>

(本文由elim寫於2023年10月1日)

前端布局方法之流式布局

移動端 viewport是瀏覽器顯示頁面內容的螢幕區域 viewport 是使用者網頁的可視區域。viewport 翻譯為中文可以叫做 視區 layout viewport visual viewport 理想視口 meta標籤 視口寬度和裝置寬度一致 預設縮放比例為1.0 不允許使用者縮放 最大縮...

Elastic Job學習(三)執行作業

流程圖 以 job為例說明 1 通過litejob實現quartz的job介面,elastic job與quartz聯絡在一起,最終作業按cron配置的時間來觸發。作業啟動時,會依據job的型別,由作業執行工廠jobexecuto ctory建立相應的作業執行器,並執行execute 方法。publ...

GUI之流式布局管理器

1.流式布局管理器 flowlayout,最簡單的布局管理器,當你向容器新增元件時,會按照從左到右放置。到達邊界時,會跳轉到下一行。flowlayout 如果不進行設定,元件會預設居中對齊,水平,垂直間距預設5個單位。flowlayout int align 指定容器的對齊方式,水平,垂直間距預設5...