把之前所有 PlantUML 知识用到极致 —— 一份完整的电商订单微服务系统,从需求到上线的全套图表。
项目背景假设我们要设计一个电商订单微服务:
订单生命周期:待付款 → 已付款 → 已发货 → 已签收 → 已完成 / 已退款
微服务拆分:订单 / 支付 / 库存 / 用户 / 推荐
数据存储:PostgreSQL + Redis ...
Self-hosting PlantUML means rendering attacker-supplied Java code. Two real risks: (1) OOM / arbitrary code execution inside the JVM, (2) hostile payloads burning your container’s CPU. This a...
PlantUML 自部署面临两个安全风险:(1) 渲染器本身会执行 Java 代码,存在 OOM/任意代码执行漏洞;(2) 攻击者上传恶意代码拖垮你的容器。这篇整理 PlantUML 自带的三层安全策略和最佳实践。
三层安全策略PlantUML 自带四种预设,由 PLANTUML_SECURITY_PROFILE 控制:
Profile
启用
适用
LEGACYDI...
Two ways to put PlantUML diagrams into a Hexo blog — server-side pre-render, or client-side live render.
The questionYou have a Hexo blog. You want PlantUML diagrams to show up in your posts. How...
When plantuml.com’s online service isn’t reliable — flaky network, security policies — self-host the renderer. Three patterns: local jar, Docker, full microservice.
Three deployment patterns
Pa...
当 plantuml.com 在线服务因为网络抖动/安全策略不可用时,可以自部署 PlantUML 渲染服务。这篇整理三种方案:本地 jar、Docker、企业自建。
三种部署方式
方案
适用
启动时长
plantuml.jar 本地
偶尔用、CI 临时
<2s
Docker 镜像
团队共享/CI 长期
<5s
plantuml-serv...
When you need to document “what the UI looks like” inside a Markdown-friendly diff-able file, PlantUML Salt turns ASCII boxes into readable wireframes. No drawing tool, no Figma — just text.
What...
当你需要在文档里描述「长什么样的 UI」「数据是什么」「如何让用户填表」,PlantUML 三种专门图就能搞定——而无需画图工具、HTML 模板或专门的设计软件。
Salt(@startsalt)—— UI 线框图Salt 是 PlantUML 最有用的「轻量级线框图」语言。它用 ASCII 框图就能画出真实可读的 UI:
123456789101112@startsalt{+...
When 10 PlantUML diagrams share the same skin and palette, preprocessor directives let you extract common code. When you want intuitive icons for docs, the icon libraries do that — together they t...
写 PlantUML 时,10 张图共用同一套皮肤和图例?预处理指令能让你抽出共用代码。写文档配好看的图标?图标库让图更直观。两件事一起做效率最高。
预处理指令速查
指令
用途
!include <url>
引入外部 PlantUML 文件 / 文本
!includeurl <url>
从 URL 引入
!include_once
in...