基本架構說明書
1 基本架構
1. 單容器版部署
1. 業務系統,在工作數據目錄內按照文檔要求準備好要處理的設備掃描數據作為輸入;
2. 業務系統以HTTP形式調用LCC的Docker鏡像提供的接口,啟動重建算法執行:
如: http://xxx/api { --傳入輸入數據文件夾路徑 --傳入輸入配置參數 --傳入接收結果文件夾路徑 }
3. 業務系統可通過api輪詢查看重建執行是否結束;結束後從結果文件夾路徑內獲取結果數據。
4. 可通過hookUrl參數傳入【重建進度回調API】的地址
2. 多容器部署架構
Docker容器在多卡服務器上,可以每個容器分別掛載一張顯卡,形成多個LCC重建容器節點。
多個容器節點支持兩種管理模式:
1)獨立多容器
可以將每個容器作為獨立節點,提供獨立的API端口,由外部的業務系統自行進行任務的管理調度。
每個容器僅作為一個LCC重建的算力節點,相互之間獨立。等同於多個單容器版部署的重複。
2)容器集群( 單機多卡 *)
可以通過Consul註冊中心,將本機上的多個容器作為一個集群管理。
在部署時,需指定某個容器節點作為主節點,通過調用主節點的API控制多個節點內的重建任務。
同時,主節點提供平台化的管理界面,直接進行圖形化管理 (參考:WebUI試用說明書)
* 註
多個容器節點,必須能夠訪問同一個/work磁盤目錄,才能夠並行協同並加速完成一個重建任務(因為LCC重建任務的過程中,會共享大量的磁盤cache文件)因此當前版本,建議在單機多卡服務器上創建多容器集群。
3. 集群任務調度策略
1) 多容器節點並行完成一個任務
LCC重建任務耗時較長,但其中的部分步驟,可以通過切分的方式,交給多個容器節點並行完成,從而縮短這個任務的總體完成時間。
* 註
當前版本的容器節點採用搶佔策略,如果想要以最快優先完成某個任務,建議在集群內先不要執行其他任務。這樣當任務需要並行時,能夠獲取到更多的可用節點。
後續版本中,將會升級更複雜的優先級配置策略。
2) 多容器節點並行完成多個任務
任務數量較多的情況下,建議採用每個容器節點處理一個任務的方式進行調度。
這樣可以最大化同時執行的任務數,並保證每個容器節點都時刻處於工作狀態。
* 註
當前版本的集群中默認採用策略 1) 多容器節點並行完成一個任務
後續版本中,將會升級更複雜的策略配置參數