最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring Cloud Data Flow初體驗以Local模式運行

 更新時間:2020年08月03日 09:21:06   作者:南瓜慢說  
這篇文章主要介紹了Spring Cloud Data Flow初體驗以Local模式運行,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1 前言

Spring Cloud Data Flow是什么,雖然已經(jīng)出現(xiàn)一段時間了,但想必很多人不知道,因為在項目中很少有人用。不僅找不到很多中文資料,英文資料也一樣少的可憐。這讓探索的路更加艱辛,也更加有趣吧。

Spring Cloud Data Flow是基于微服務的,專門用于流式和批式數(shù)據(jù)處理的框架。

2 基本概念

2.1 數(shù)據(jù)處理模式

數(shù)據(jù)處理有兩種模式,分別是Streaming流式處理Batch批次處理Streaming是長時間一直存在的,你數(shù)據(jù)來了我就處理,沒來我就等著,基于消息驅動。Batch是處理時間較短的,啟動一次處理一次,處理完就退出任務,需要去觸發(fā)任務。

一般地,我們會基于Spring Cloud Stream框架來開發(fā)Streaming應用,而基于Spring Cloud TaskSpring Batch框架來開發(fā)Batch應用。完成開發(fā)后,可以打包成兩種形式:

  • (1)Springboot式的jar包,可以放在maven倉庫、文件目錄或HTTP服務上;
  • (2)Docker鏡像。

對于Stream,有三個概念是需要理解的:

  • (1)Source:消息生產(chǎn)者,負責把消息發(fā)送到某個目標;
  • (2)Sink:消息消費者,負責從某個目標讀取消息;
  • (3)Processor:聯(lián)合SourceSink,它從某個目標消費消息,然后發(fā)送到另一個目標。

2.2 特性

Spring Cloud Data Flow有許多好的特性值得我們學去使用它:

  • 基于云的架構,可部署在Cloud Foundry、KubernetesOpenShift等。
  • 有許多可選擇的開箱即用的流處理和批處理應用組件。
  • 可自定義應用組件,且是基于Springboot風格的編程模型。
  • 有簡單靈活的DSL(Domain Specific Language)去定義任務處理邏輯。
  • 有美觀的Dashboard能可視化地定義處理邏輯、管理應用、管理任務等。
  • 提供了REST API,可以在shell命令行模式下進行交互。

2.3 服務端組件

服務端有兩個重要的組件:Data Flow ServerSkipper Server。兩者作用不同,互相協(xié)作。

Data Flow Server的主要作用有:

  • 解析DSL;校驗和持久化StreamTaskBatch的定義;
  • 注冊應用如jar包應用和docker應用;
  • 部署Batch到一個或多個平臺;
  • 查詢JobBatch的歷史執(zhí)行記錄;
  • Stream的配置管理;
  • 分發(fā)Stream部署到Skipper
  • Skipper Server主要作用有:
  • 部署Stream到一個或多個平臺;
  • 基于有灰度/綠色更新策略地更新或回滾Stream
  • 保存每一個Stream的描述信息。

可以看出,如果不需要使用Stream,可以不用部署Skipper。兩者都需要依賴關系型數(shù)據(jù)庫(RDBMS),默認會使用內置的H2,支持的數(shù)據(jù)庫有H2、HSQLDBMYSQL、OraclePostgreSql、DB2SqlServer。

2.4 運行環(huán)境

優(yōu)秀的Spring的解耦能力總是特別強,Server和應用可以運行在不同的平臺。我們可以把Data Flow ServerSkipper Server部署在Local、Cloud FoundryKuernetes,而Server又可以把應用部署在不同的平臺。

  • 服務端Local:應用Local/Cloud Foundry/Kuernetes;
  • 服務端Cloud Foundry:應用Cloud Foundry/Kuernetes;
  • 服務端Kuernetes:應用Cloud Foundry/Kuernetes。

一般情況下,我們會把Server和應用部署在同一平臺上。對于生產(chǎn)環(huán)境,建議還是在Kuernetes上比較合適。

3 本地模式安裝使用

為了快速體驗,我們使用最簡單的本地運行環(huán)境。

3.1 下載Jar包

下載以下三個jar包:

wget https://repo.spring.io/release/org/springframework/cloud/spring-cloud-dataflow-server/2.5.3.RELEASE/spring-cloud-dataflow-server-2.5.3.RELEASE.jar
wget https://repo.spring.io/release/org/springframework/cloud/spring-cloud-dataflow-shell/2.5.3.RELEASE/spring-cloud-dataflow-shell-2.5.3.RELEASE.jar
wget https://repo.spring.io/release/org/springframework/cloud/spring-cloud-skipper-server/2.4.3.RELEASE/spring-cloud-skipper-server-2.4.3.RELEASE.jar

如果是簡單的Batch應用,可以只下載spring-cloud-dataflow-server-2.5.3.RELEASE.jar。

3.2 啟動應用

# 啟動Skipper,默認端口為7577
java -jar spring-cloud-skipper-server-2.4.3.RELEASE.jar
# 啟動Data Flow Server,默認端口為9393
java -jar spring-cloud-dataflow-server-2.5.3.RELEASE.jar

啟動完成后,訪問UI:http://localhost:9393/dashboard

3.3 部署應用

3.3.1 添加應用Applications

只有添加了應用,才能部署BatchStream。官方提供了示例Applications,我們直接使用就可以了:

添加成功后,在應用列表可以查看:

3.3.2 創(chuàng)建Task

創(chuàng)建Task可以圖形化創(chuàng)建,也可以通過DSL來創(chuàng)建,非常方便:

定義好Task后,輸入名字創(chuàng)建:

3.3.3 運行Task

直接點擊運行:

可以傳入?yún)?shù):

3.3.4 查看Task運行情況

可以查看運行日志:

3.4 Data Flow Shell命令行

除了在網(wǎng)頁上,還可以通過命令行模式來與Server進行交互。

啟動應用:

$ java -jar spring-cloud-dataflow-shell-2.5.3.RELEASE.jar 
 ____    ____ _  __
 / ___| _ __ _ __(_)_ __ __ _ / ___| | ___ _ _ __| |
 \___ \| '_ \| '__| | '_ \ / _` | | | | |/ _ \| | | |/ _` |
 ___) | |_) | | | | | | | (_| | | |___| | (_) | |_| | (_| |
 |____/| .__/|_| |_|_| |_|\__, | \____|_|\___/ \__,_|\__,_|
 ____ |_| _  __|___/   __________
 | _ \ __ _| |_ __ _ | ___| | _____ __ \ \ \ \ \ \
 | | | |/ _` | __/ _` | | |_ | |/ _ \ \ /\ / / \ \ \ \ \ \
 | |_| | (_| | || (_| | | _| | | (_) \ V V / / / / / / /
 |____/ \__,_|\__\__,_| |_| |_|\___/ \_/\_/ /_/_/_/_/_/

2.5.3.RELEASE

Welcome to the Spring Cloud Data Flow shell. For assistance hit TAB or type "help".
Successfully targeted http://localhost:9393/

dataflow:>app list
╔═══╤══════╤═════════╤════╤════════════════════╗
║app│source│processor│sink│ task ║
╠═══╪══════╪═════════╪════╪════════════════════╣
║ │ │  │ │composed-task-runner║
║ │ │  │ │timestamp-batch ║
║ │ │  │ │timestamp  ║
╚═══╧══════╧═════════╧════╧════════════════════╝

dataflow:>

4 總結

本文使用的是官方提供的應用,我們可以自己開發(fā)應用并注冊到Server上。Local模式適合開發(fā)環(huán)境適合,生產(chǎn)環(huán)境還是部署在Kubernetes比較靠譜。后面我們再來探索吧。

到此這篇關于Spring Cloud Data Flow初體驗以Local模式運行的文章就介紹到這了,更多相關Spring Cloud Data Flow初體驗內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java中return的用法(兩種)

    Java中return的用法(兩種)

    這篇文章主要介紹了Java中return的用法(兩種)的相關資料,需要的朋友可以參考下
    2016-01-01
  • java -jar后臺啟動的四種方式小結

    java -jar后臺啟動的四種方式小結

    這篇文章主要介紹了java -jar后臺啟動的四種方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Java中線程中斷的幾種方法小結

    Java中線程中斷的幾種方法小結

    在Java中,線程中斷是一種協(xié)作機制,它通過設置線程的中斷標志位來通知線程需要中斷,本文主要介紹了Java中線程中斷的幾種方法小結,具有一定的參考價值,感興趣的可以了解一下
    2023-12-12
  • 解決Mac?m1?電腦?idea?卡頓的問題

    解決Mac?m1?電腦?idea?卡頓的問題

    這篇文章主要介紹了Mac?m1?電腦?idea?卡頓的問題解決,文中給大家補充介紹了IDEA卡頓問題處理方法,需要的朋友可以參考下
    2023-03-03
  • Java協(xié)議字節(jié)操作工具類詳情

    Java協(xié)議字節(jié)操作工具類詳情

    這篇文章主要介紹了Java協(xié)議字節(jié)操作工具類詳情,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • 一文詳解Java攔截器與過濾器的使用

    一文詳解Java攔截器與過濾器的使用

    這篇文章主要為大家詳細介紹了Java中攔截器與過濾器的使用與區(qū)別,文中的示例代碼講解詳細,對我們學習有一定參考價值,需要的可以參考一下
    2022-04-04
  • 詳解servlet的url-pattern匹配規(guī)則

    詳解servlet的url-pattern匹配規(guī)則

    本篇文章主要介紹了=servlet的url-pattern匹配規(guī)則,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • springboot項目Redis統(tǒng)計在線用戶的實現(xiàn)示例

    springboot項目Redis統(tǒng)計在線用戶的實現(xiàn)示例

    最近做個項目需要統(tǒng)計在線用戶,本文主要介紹了springboot項目Redis統(tǒng)計在線用戶的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • Hibernate基于ThreadLocal管理Session過程解析

    Hibernate基于ThreadLocal管理Session過程解析

    這篇文章主要介紹了Hibernate基于ThreadLocal管理Session過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • 詳解SpringBoot下文件上傳與下載的實現(xiàn)

    詳解SpringBoot下文件上傳與下載的實現(xiàn)

    這篇文章主要介紹了SpringBoot下文件上傳與下載的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-05-05

最新評論

临澧县| 确山县| 洪洞县| 宜兰县| 凤城市| 天台县| 西乌珠穆沁旗| 汉川市| 吐鲁番市| 榆林市| 桐梓县| 汝州市| 乾安县| 改则县| 玛多县| 利津县| 卓尼县| 丹凤县| 连江县| 大冶市| 呼图壁县| 神农架林区| 蒙山县| 虹口区| 泸溪县| 拜泉县| 邢台县| 金坛市| 民和| 威远县| 梁平县| 嘉鱼县| 阿瓦提县| 泾源县| 原平市| 海城市| 米脂县| 夏津县| 赣榆县| 彭阳县| 乌拉特中旗|