使用程式語言/描述性文字建立視覺化架構圖 的 4 個開源工具

策展摘要說明

繪製視覺化的網路架構圖目前有許多所見即所得的工具,但是這些工具有一個缺點 – 版本控制。這次的開源工具策展使用了程式語言/描述性文字來產生網路架構圖,可以讓你方便版本控制並比較版本之間的差異。

用 Go 建立漂亮的系統關係圖

使用 Go 語言來繪製系統關係圖

d, err := diagram.New(diagram.Filename("app"), diagram.Label("App"), diagram.Direction("LR")) if err != nil { log.Fatal(err) } dns := gcp.Network.Dns(diagram.NodeLabel("DNS")) lb := gcp.Network.LoadBalancing(diagram.NodeLabel("NLB")) cache := gcp.Database.Memorystore(diagram.NodeLabel("Cache")) db := gcp.Database.Sql(diagram.NodeLabel("Database")) dc := diagram.NewGroup("GCP") dc.NewGroup("services"). Label("Service Layer"). Add( gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 1")), gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 2")), gcp.Compute.ComputeEngine(diagram.NodeLabel("Server 3")), ). ConnectAllFrom(lb.ID(), diagram.Forward()). ConnectAllTo(cache.ID(), diagram.Forward()) dc.NewGroup("data").Label("Data Layer").Add(cache, db).Connect(cache, db) d.Connect(dns, lb, diagram.Forward()).Group(dc) if err := d.Render(); err != nil { log.Fatal(err) }

產生這張圖

diagrams – 使用程式碼來描述雲端系統架構圖示

Diagram 可以用 Python 程式碼繪製雲端系統架構。 它的誕生是為了在沒有任何設計工具的情況下對一個新的系統架構設計進行原型化。 你還可以描述或視覺化現有的系統架構。 Diagram 目前支援四個主要的雲端提供者: AWS、 Azure、 GCP 和 Kubernetes。

使用簡單的 YAML 語法並利用 GraphViz 生成高階微服務架構圖

可以使用這個 YAML 範例  ./examples/message-bus-pattern.yml

然後實行 draft 命令

draft message-bus-pattern.yml | dot -Tpng > message-bus-pattern.png

得到這張圖片

drawthe.net – 從描述位置,佈局和 icon 的文件檔案中動態繪製網路圖。 或是給一個描述網路層次結構及其連接的 yaml 檔案,將建立一個結果圖

這個專案的開發動機是目前繪製這種網路圖都必須透過 Visio 或是 OmniGraffle 這種圖形介面軟體來繪製,你必須使用滑鼠不斷地調整大小來繪製,這個專案希望可以透過一個文字檔案來描述,然後使用 SVG 在瀏覽器中顯示

相關線上服務

也許你會有興趣

找其它課程?試看看 Soft & Share 網站搜尋引擎

✍ 搜尋結果太多?可參考 Soft & Share 搜尋引擎使用技巧


追蹤 Soft & Share

幫我們個小忙!

Comments are closed.

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: