自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

高端大氣的云系統(tǒng)架構(gòu)圖,幾行代碼就能搞定

開發(fā) 架構(gòu)
想知道如何用Python代碼繪制出云系統(tǒng)架構(gòu)圖,那么,今天猿妹要和大家分享的這個(gè)開源項(xiàng)目你一定喜歡——diagrams。

[[408290]]

想知道如何用Python代碼繪制出云系統(tǒng)架構(gòu)圖,那么,今天猿妹要和大家分享的這個(gè)開源項(xiàng)目你一定喜歡——diagrams。

diagrams是一個(gè)不需要使用任何的設(shè)計(jì)工具,只需要幾行代碼就能做出一張?bào)@艷的云系統(tǒng)架構(gòu)圖的工具,它的誕生就是為了在沒有任何設(shè)計(jì)工具的情況下對(duì)新的系統(tǒng)架構(gòu)設(shè)計(jì)進(jìn)行原型設(shè)計(jì),你可以用它來(lái)描述或者可視化現(xiàn)有的系統(tǒng)架構(gòu),diagrams目前支持AWS, Azure, GCP, Kubernetes, Alibaba Cloud, Oracle Cloud 等。同時(shí),它還支持內(nèi)置的架構(gòu)圖組件、SaaS 和主流的編程框架和語(yǔ)言。Diagram as Code還允許用戶跟蹤任何版本控制系統(tǒng)中的架構(gòu)圖更改。

除此之外,如果你熟悉Go,你可以使用go-diagrams。(項(xiàng)目地址:https://github.com/blushft/go-diagrams)

目前,diagrams已經(jīng)在Github上標(biāo)星14.5K,累計(jì)分支 795 個(gè)(Github地址:https://github.com/mingrammer/diagrams)

安裝要求

diagrams支持Python 3.6及以上版本,它是使用Graphviz來(lái)渲染圖表,因此您需要安裝 Graphviz才能使用,首先確保這兩項(xiàng)符合要求之后,才可以安裝diagrams。macOS用戶可以通過(guò)以下方式下載Graphviz:

  1. # using pip (pip3) 
  2. $ pip install diagrams 
  3.  
  4. # using pipenv 
  5. $ pipenv install diagrams 
  6.  
  7. # using poetry 
  8. $ poetry add diagrams 

快速開始

  1. # diagram.py 
  2. from diagrams import Diagram 
  3. from diagrams.aws.compute import EC2 
  4. from diagrams.aws.database import RDS 
  5. from diagrams.aws.network import ELB 
  6.  
  7. with Diagram("Web Service", show=False): 
  8.     ELB("lb") >> EC2("web") >> RDS("userdb"

此代碼生成下圖:

  1. $ python diagram.py 

它將保存web_service.png在你的工作目錄中。

AWS 上的分組工作人員

  1. from diagrams import Diagram 
  2. from diagrams.aws.compute import EC2 
  3. from diagrams.aws.database import RDS 
  4. from diagrams.aws.network import ELB 
  5.  
  6. with Diagram("Grouped Workers", show=False, direction="TB"): 
  7.     ELB("lb") >> [EC2("worker1"), 
  8.                   EC2("worker2"), 
  9.                   EC2("worker3"), 
  10.                   EC2("worker4"), 
  11.                   EC2("worker5")] >> RDS("events"

集群網(wǎng)絡(luò)服務(wù)

  1. from diagrams import Cluster, Diagram 
  2. from diagrams.aws.compute import ECS 
  3. from diagrams.aws.database import ElastiCache, RDS 
  4. from diagrams.aws.network import ELB 
  5. from diagrams.aws.network import Route53 
  6.  
  7. with Diagram("Clustered Web Services", show=False): 
  8.     dns = Route53("dns"
  9.     lb = ELB("lb"
  10.  
  11.     with Cluster("Services"): 
  12.         svc_group = [ECS("web1"), 
  13.                      ECS("web2"), 
  14.                      ECS("web3")] 
  15.  
  16.     with Cluster("DB Cluster"): 
  17.         db_main = RDS("userdb"
  18.         db_main - [RDS("userdb ro")] 
  19.  
  20.     memcached = ElastiCache("memcached"
  21.  
  22.     dns >> lb >> svc_group 
  23.     svc_group >> db_main 
  24.     svc_group >> memcached 

 

 

責(zé)任編輯:武曉燕 來(lái)源: 開源最前線
相關(guān)推薦

2021-09-08 11:02:32

Java代碼圖片

2010-04-21 09:49:26

Windows Pho

2021-12-02 09:31:22

Python 代碼進(jìn)度條

2020-04-17 14:48:30

代碼機(jī)器學(xué)習(xí)Python

2020-07-07 07:30:33

技術(shù)IT架構(gòu)

2019-11-06 11:01:57

Python人臉識(shí)別代碼

2021-11-23 23:01:40

Windows微軟系統(tǒng)

2013-10-12 15:27:56

華為路由器華為

2013-09-13 15:29:55

iPad銷售展示工具電子產(chǎn)品宣傳冊(cè)

2015-06-29 09:51:45

支付寶

2012-03-27 11:49:41

vmwareCloud Found

2011-08-19 11:34:05

iOS架構(gòu)圖

2020-06-15 08:54:46

架構(gòu)圖 EA業(yè)務(wù)建模

2021-11-22 10:38:23

架構(gòu)運(yùn)維技術(shù)

2021-08-13 07:23:15

架構(gòu)秒殺系統(tǒng)

2019-05-25 15:17:03

雙系統(tǒng)手機(jī)虛擬系統(tǒng)

2014-07-07 13:59:47

藍(lán)寶石

2023-09-19 08:28:32

DiagramsPython工具

2014-08-08 09:03:19

IT性能管理

2024-03-26 09:16:12

網(wǎng)絡(luò)架構(gòu)圖AWS
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)