本文目录导读:

绘制部署图(Deployment Diagram,UML中的一种)通常用于展示系统的物理架构,即软件制品(如可执行文件、库)是如何部署到硬件节点(如服务器、设备、容器)上的。
根据你的需求(专业程度、成本、团队协作),有几种不同的工具和画法,以下是具体的方法:
使用专业建模工具(推荐,功能最全)
这些工具支持UML标准符号,能自动生成代码或反向工程。
-
StarUML(跨平台,轻量)
- 操作:新建项目 -> 选择
Deployment Diagram-> 从工具箱拖拽Node(节点,如服务器)、Artifact(制品,如war包)、Device(设备)。 - 连线:使用
Association(关联)或Communication Path(通信路径)连接节点。 - 优势:支持UML标准,可导出为图片/PDF,价格适中。
- 操作:新建项目 -> 选择
-
PlantUML(代码化画图,适合极客和版本控制)
-
操作:用纯代码描述图,然后生成图片。
-
示例代码(文本编写,自动渲染):
@startuml title 系统部署图 artifact "订单服务.jar" as order_jar artifact "支付服务.war" as pay_war node "应用服务器 (Tomcat)" as app_server { [订单服务.jar] --> [支付服务.war] } database "MySQL 8.0" as db { folder "数据库脚本" } app_server -- db : JDBC @enduml -
优势:纯文本,方便Git管理、多人协作、集成到文档/代码中,推荐在线编辑器或VSCode插件。
-
-
Draw.io / diagrams.net(免费、在线、轻量)
- 操作:打开 -> 左侧
UML或Azure/AWS图标库 -> 拖拽“节点”(矩形)代表服务器,拖拽“制品”放入节点内。 - 技巧:使用“容器”或“框架”形状来画节点,使用箭头连接表示通信协议(如HTTP、JDBC)。
- 优势:完全免费,无需注册,本地保存,支持导出为SVG/PNG。适合快速草图。
- 操作:打开 -> 左侧
使用云架构工具(适合微服务、云原生)
如果部署在云上,使用云厂商的图标会更直观。
-
Lucidchart(专业在线协作)
- 操作:搜索“Deployment Diagram”模板 -> 使用其丰富的UML和云图标库(AWS、Azure、GCP)。
- 优势:协作功能强,支持实时评论,样式精美。
-
Excalidraw(手绘风,非专业但快速)
- 操作:打开 -> 画矩形盒子代表物理节点,在里面写字代表组件,连线用箭头。
- 优势:极简,手绘风格让人放松,适合白板讨论,不适合严格UML标准。
标准部署图的核心元素(画前必看)
无论用什么工具,你需要理解以下三个核心元素:
- 节点(Node):物理硬件或虚拟环境,用三维立体盒子表示(标准UML)或用云/服务器图标(非严格UML)。
[应用服务器]、[客户端PC]。 - 制品(Artifact):软件的具体文件,用矩形加“<>”标签表示。
«artifact» order-service.jar、«executable» app.exe。 - 通信路径(Communication Path):节点间的物理或网络连接,用实线表示,可标明协议。
[Web服务器] ---- HTTP ---- [API服务器]。 - 部署关系(Deployment):制品放在哪个节点上(通常直接把制品画在节点框内部)。
快速上手步骤(以Draw.io为例,5分钟画一个)
- 打开 app.diagrams.net -> 选择“空白框图”。
- 搜索“Box”拖出一个矩形,命名
Web Server (Linux),这是第一个节点。 - 再拖一个矩形,命名
Database Server (Windows),这是第二个节点。 - 在
Web Server框内部,画一个小矩形,命名nginx(表示部署了Nginx)。 - 在
Web Server框内部,再画一个小矩形,命名app.jar(表示部署了Java应用)。 - 拖出一条箭头,从
Web Server连接到Database Server,在线上标注JDBC / 3306。 - 添加一个框画在最外面,命名
企业内网 (LAN),把所有服务器框进去(表示物理或网络边界)。 - 导出为PNG或SVG。
总结建议
- 快速草图/演示:使用 Draw.io 或 Excalidraw。
- 专业文档/团队标准:使用 StarUML 或 Lucidchart。
- 代码化/极客/版本控制:使用 PlantUML。
核心要点:部署图最重要的是清晰表达出“哪个软件运行在哪台机器上”以及“它们之间如何通信”,而不是追求图形有多漂亮。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。