Документация / PlantUML
Компоненты и развёртывание
Диаграммы компонентов и развёртывания описывают архитектуру: из каких частей состоит система, какие у них интерфейсы и где они работают. В PlantUML обе строятся из одних и тех же элементов, поэтому их можно сочетать.
Компоненты и интерфейсы
Компонент записывается в квадратных скобках [Название] или словом component, интерфейс — () или
interface.
@startuml
[Веб-приложение] as Web
component "Сервис заказов" as Orders
component "Сервис оплаты" as Payments
interface "REST API" as API
() "Kafka: orders" as Topic
Web --> API
API - Orders
Orders --> Topic : публикует
Topic --> Payments : читает
@enduml
Группировка
Элементы объединяются в контейнеры: package, node, folder, frame, cloud, database, rectangle.
@startuml
package "Frontend" {
[SPA] as Spa
}
node "Kubernetes" {
frame "namespace: shop" {
[API Gateway] as Gw
[Orders] as Ord
}
}
database "PostgreSQL" {
folder "orders" {
[Таблицы заказов] as Tbl
}
}
cloud "Внешние сервисы" {
[Платёжный шлюз] as Pay
}
Spa --> Gw : HTTPS
Gw --> Ord
Ord --> Tbl : JDBC
Ord --> Pay : REST
@enduml
Порты
@startuml
component "Сервис" as S {
portin "HTTP" as In
portout "Kafka" as Out
[Ядро] as Core
}
In --> Core
Core --> Out
@enduml
Элементы развёртывания
Для диаграммы развёртывания есть элементы с собственными значками.
@startuml
actor Пользователь
node "Сервер приложений" as App {
artifact "orders.jar" as Jar
}
database "БД" as DB
queue "RabbitMQ" as MQ
storage "S3" as S3
cloud "CDN" as CDN
card "Конфигурация" as Cfg
Пользователь --> CDN
CDN --> App
Jar --> DB
Jar --> MQ
Jar --> S3
Cfg ..> Jar
@enduml
Доступные элементы: actor, agent, artifact, boundary, card, circle, cloud, collections,
component, control, database, entity, file, folder, frame, hexagon, interface, label,
node, package, person, queue, rectangle, stack, storage, usecase.
Связи
Связи рисуются линиями разного вида; подпись — после двоеточия.
@startuml
node A
node B
node C
node D
A --> B : сплошная со стрелкой
A ..> C : пунктирная
A -- D : без стрелки
B -[#red,dashed]-> D : цвет и стиль
C -[bold]-> D : жирная
@enduml
Заметки и стереотипы
@startuml
component "Биллинг" as Billing <<legacy>>
note bottom of Billing
Планируется замена
в третьем квартале
end note
@enduml
Похожие инструменты
Обновлено: 30 сентября 2026 г.
