DataShops資料工廠,工程架構(五)
工程架構
DataShops使用spring boot框架,配合maven進行構建,整個專案採用多模組方式進行組合,核心部分將在後期做更詳細介紹。
主要框架版本
• java - 1。8+
• spring boot - 2。4。2
• flink - 1。12。0
程式碼結構
bin
bin目錄下包含三個指令碼,主要做服務的啟停及狀態檢視,分別是:
•datashops-daemon。sh•start。sh•stop。sh
datashops-api
api模組主要提供datashops的介面服務,給前端提供介面,並可對外提供任務及任務例項的相關操作介面,其中包含一個
SpringBootApplication
註解作為啟動入口。
datashops-common
common模組提供一些常用工具類及常量的定義,包括配置檔案讀取、檔案操作、日期函式等。
datashops-dao
dao主要封裝資料庫相關操作,提供訪問關係型資料庫系統所需操作的介面,將資料訪問和業務邏輯分離對上層提供面向物件的資料訪問介面。
datashops-model
model為模型層,主要存放資料庫表或自定義的實體,在不同模組間傳輸。
datashops-dist
dist模組提供專案全模組編譯,輸出需要的編譯結果。
datashops-protocol
protocol模組提供網路通訊的協議,自定義通訊過程要傳輸的物件,使用Protocol Buffer協議實現,透過gRPC實現節點之間的rpc呼叫。
datashops-remote
remote中定義gRPC的啟動入口,並對封裝成request的物件傳送到指定host,因此包含server及client類。
datashops-server
server模組為DataShops工作流排程的核心模組,包括
•master/worker啟動
•任務排程
•依賴檢查
•分發
•worker負載均衡
•佇列
•任務定義
•執行緒池配置
•心跳
•執行器
•rpc請求
•超時檢查
datashops-service
業務層,主要負責資料持久化,quartz管理任務,zookeeper呼叫,後臺管理等。
聯絡
• 主頁:https://www。datashops。cn
• 郵箱:shiwei138#163。com