Client-side encrypted workspace
The workspace "" has been client-side encrypted, please enter the passphrase to decrypt it.
!docs
, !adrs
, !script
, etc) are unavailable on this demo page - see Help - DSL for details.
PlantUML definitions are available via the Structurizr CLI export command,
using the -format plantuml
parameter.
@startuml title Spring PetClinic - Deployment - Live left to right direction skinparam { shadowing false arrowFontSize 10 defaultTextAlignment center wrapWidth 200 maxMessageSize 100 } hide stereotype skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> { BackgroundColor #ffffff FontColor #d86613 BorderColor #d86613 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam node<<Live.AmazonWebServices>> { BackgroundColor #ffffff FontColor #232f3e BorderColor #232f3e roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup>> { BackgroundColor #ffffff FontColor #cc2264 BorderColor #cc2264 roundCorner 20 } skinparam database<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 } skinparam rectangle<<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Route53>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1>> { BackgroundColor #ffffff FontColor #147eba BorderColor #147eba roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 roundCorner 20 } node "Amazon Web Services\n[Deployment Node]" <<Live.AmazonWebServices>> as Live.AmazonWebServices { node "US-East-1\n[Deployment Node]" <<Live.AmazonWebServices.USEast1>> as Live.AmazonWebServices.USEast1 { node "Amazon RDS\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS>> as Live.AmazonWebServices.USEast1.AmazonRDS { node "MySQL\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL { database "==Database\n<size:10>[Container: Relational database schema]</size>\n\nStores information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } node "Autoscaling group\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup>> as Live.AmazonWebServices.USEast1.Autoscalinggroup { node "Amazon EC2\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 { rectangle "==Web Application\n<size:10>[Container: Java and Spring Boot]</size>\n\nAllows employees to view and manage information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } rectangle "==Elastic Load Balancer\n<size:10>[Infrastructure Node]</size>\n\nAutomatically distributes incoming application traffic." <<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> as Live.AmazonWebServices.USEast1.ElasticLoadBalancer rectangle "==Route 53\n<size:10>[Infrastructure Node]</size>\n\nHighly available and scalable cloud DNS service." <<Live.AmazonWebServices.USEast1.Route53>> as Live.AmazonWebServices.USEast1.Route53 } } Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 : "<color:#707070>Reads from and writes to\n<color:#707070><size:8>[MySQL Protocol/SSL]</size>" Live.AmazonWebServices.USEast1.Route53 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.ElasticLoadBalancer : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" Live.AmazonWebServices.USEast1.ElasticLoadBalancer .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction skinparam { shadowing false arrowFontSize 10 defaultTextAlignment center wrapWidth 200 maxMessageSize 100 } hide stereotype skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> { BackgroundColor #ffffff FontColor #d86613 BorderColor #d86613 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam node<<Live.AmazonWebServices>> { BackgroundColor #ffffff FontColor #232f3e BorderColor #232f3e roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup>> { BackgroundColor #ffffff FontColor #cc2264 BorderColor #cc2264 roundCorner 20 } skinparam database<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 } skinparam rectangle<<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Route53>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1>> { BackgroundColor #ffffff FontColor #147eba BorderColor #147eba roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 roundCorner 20 } node "Amazon Web Services\n[Deployment Node]" <<Live.AmazonWebServices>> as Live.AmazonWebServices { node "US-East-1\n[Deployment Node]" <<Live.AmazonWebServices.USEast1>> as Live.AmazonWebServices.USEast1 { node "Amazon RDS\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS>> as Live.AmazonWebServices.USEast1.AmazonRDS { hide Live.AmazonWebServices.USEast1.AmazonRDS node "MySQL\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL { hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL database "==Database\n<size:10>[Container: Relational database schema]</size>\n\nStores information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } node "Autoscaling group\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup>> as Live.AmazonWebServices.USEast1.Autoscalinggroup { hide Live.AmazonWebServices.USEast1.Autoscalinggroup node "Amazon EC2\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 { hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 rectangle "==Web Application\n<size:10>[Container: Java and Spring Boot]</size>\n\nAllows employees to view and manage information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } rectangle "==Elastic Load Balancer\n<size:10>[Infrastructure Node]</size>\n\nAutomatically distributes incoming application traffic." <<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> as Live.AmazonWebServices.USEast1.ElasticLoadBalancer hide Live.AmazonWebServices.USEast1.ElasticLoadBalancer rectangle "==Route 53\n<size:10>[Infrastructure Node]</size>\n\nHighly available and scalable cloud DNS service." <<Live.AmazonWebServices.USEast1.Route53>> as Live.AmazonWebServices.USEast1.Route53 } } Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 : "<color:#707070>Reads from and writes to\n<color:#707070><size:8>[MySQL Protocol/SSL]</size>" Live.AmazonWebServices.USEast1.Route53 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.ElasticLoadBalancer : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" Live.AmazonWebServices.USEast1.ElasticLoadBalancer .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction skinparam { shadowing false arrowFontSize 10 defaultTextAlignment center wrapWidth 200 maxMessageSize 100 } hide stereotype skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> { BackgroundColor #ffffff FontColor #d86613 BorderColor #d86613 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam node<<Live.AmazonWebServices>> { BackgroundColor #ffffff FontColor #232f3e BorderColor #232f3e roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup>> { BackgroundColor #ffffff FontColor #cc2264 BorderColor #cc2264 roundCorner 20 } skinparam database<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 } skinparam rectangle<<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Route53>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1>> { BackgroundColor #ffffff FontColor #147eba BorderColor #147eba roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 roundCorner 20 } node "Amazon Web Services\n[Deployment Node]" <<Live.AmazonWebServices>> as Live.AmazonWebServices { node "US-East-1\n[Deployment Node]" <<Live.AmazonWebServices.USEast1>> as Live.AmazonWebServices.USEast1 { node "Amazon RDS\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS>> as Live.AmazonWebServices.USEast1.AmazonRDS { hide Live.AmazonWebServices.USEast1.AmazonRDS node "MySQL\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL { hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL database "==Database\n<size:10>[Container: Relational database schema]</size>\n\nStores information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } node "Autoscaling group\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup>> as Live.AmazonWebServices.USEast1.Autoscalinggroup { hide Live.AmazonWebServices.USEast1.Autoscalinggroup node "Amazon EC2\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 { hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 rectangle "==Web Application\n<size:10>[Container: Java and Spring Boot]</size>\n\nAllows employees to view and manage information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } rectangle "==Elastic Load Balancer\n<size:10>[Infrastructure Node]</size>\n\nAutomatically distributes incoming application traffic." <<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> as Live.AmazonWebServices.USEast1.ElasticLoadBalancer rectangle "==Route 53\n<size:10>[Infrastructure Node]</size>\n\nHighly available and scalable cloud DNS service." <<Live.AmazonWebServices.USEast1.Route53>> as Live.AmazonWebServices.USEast1.Route53 } } Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 : "<color:#707070>Reads from and writes to\n<color:#707070><size:8>[MySQL Protocol/SSL]</size>" Live.AmazonWebServices.USEast1.Route53 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.ElasticLoadBalancer : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" Live.AmazonWebServices.USEast1.ElasticLoadBalancer .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction skinparam { shadowing false arrowFontSize 10 defaultTextAlignment center wrapWidth 200 maxMessageSize 100 } hide stereotype skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> { BackgroundColor #ffffff FontColor #d86613 BorderColor #d86613 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam node<<Live.AmazonWebServices>> { BackgroundColor #ffffff FontColor #232f3e BorderColor #232f3e roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup>> { BackgroundColor #ffffff FontColor #cc2264 BorderColor #cc2264 roundCorner 20 } skinparam database<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 } skinparam rectangle<<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Route53>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1>> { BackgroundColor #ffffff FontColor #147eba BorderColor #147eba roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 roundCorner 20 } node "Amazon Web Services\n[Deployment Node]" <<Live.AmazonWebServices>> as Live.AmazonWebServices { node "US-East-1\n[Deployment Node]" <<Live.AmazonWebServices.USEast1>> as Live.AmazonWebServices.USEast1 { node "Amazon RDS\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS>> as Live.AmazonWebServices.USEast1.AmazonRDS { hide Live.AmazonWebServices.USEast1.AmazonRDS node "MySQL\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL { hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL database "==Database\n<size:10>[Container: Relational database schema]</size>\n\nStores information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } node "Autoscaling group\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup>> as Live.AmazonWebServices.USEast1.Autoscalinggroup { node "Amazon EC2\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 { rectangle "==Web Application\n<size:10>[Container: Java and Spring Boot]</size>\n\nAllows employees to view and manage information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } rectangle "==Elastic Load Balancer\n<size:10>[Infrastructure Node]</size>\n\nAutomatically distributes incoming application traffic." <<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> as Live.AmazonWebServices.USEast1.ElasticLoadBalancer rectangle "==Route 53\n<size:10>[Infrastructure Node]</size>\n\nHighly available and scalable cloud DNS service." <<Live.AmazonWebServices.USEast1.Route53>> as Live.AmazonWebServices.USEast1.Route53 } } Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 : "<color:#707070>Reads from and writes to\n<color:#707070><size:8>[MySQL Protocol/SSL]</size>" Live.AmazonWebServices.USEast1.Route53 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.ElasticLoadBalancer : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" Live.AmazonWebServices.USEast1.ElasticLoadBalancer .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction skinparam { shadowing false arrowFontSize 10 defaultTextAlignment center wrapWidth 200 maxMessageSize 100 } hide stereotype skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> { BackgroundColor #ffffff FontColor #d86613 BorderColor #d86613 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam node<<Live.AmazonWebServices>> { BackgroundColor #ffffff FontColor #232f3e BorderColor #232f3e roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.Autoscalinggroup>> { BackgroundColor #ffffff FontColor #cc2264 BorderColor #cc2264 roundCorner 20 } skinparam database<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 } skinparam rectangle<<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> { BackgroundColor #ffffff FontColor #3b48cc BorderColor #3b48cc roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Route53>> { BackgroundColor #ffffff FontColor #693cc5 BorderColor #693cc5 roundCorner 20 } skinparam node<<Live.AmazonWebServices.USEast1>> { BackgroundColor #ffffff FontColor #147eba BorderColor #147eba roundCorner 20 } skinparam rectangle<<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> { BackgroundColor #ffffff FontColor #000000 BorderColor #b2b2b2 roundCorner 20 } node "Amazon Web Services\n[Deployment Node]" <<Live.AmazonWebServices>> as Live.AmazonWebServices { node "US-East-1\n[Deployment Node]" <<Live.AmazonWebServices.USEast1>> as Live.AmazonWebServices.USEast1 { node "Amazon RDS\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS>> as Live.AmazonWebServices.USEast1.AmazonRDS { node "MySQL\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL { database "==Database\n<size:10>[Container: Relational database schema]</size>\n\nStores information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1>> as Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } node "Autoscaling group\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup>> as Live.AmazonWebServices.USEast1.Autoscalinggroup { node "Amazon EC2\n[Deployment Node]" <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 { rectangle "==Web Application\n<size:10>[Container: Java and Spring Boot]</size>\n\nAllows employees to view and manage information regarding the veterinarians, the clients, and their pets." <<Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1>> as Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } rectangle "==Elastic Load Balancer\n<size:10>[Infrastructure Node]</size>\n\nAutomatically distributes incoming application traffic." <<Live.AmazonWebServices.USEast1.ElasticLoadBalancer>> as Live.AmazonWebServices.USEast1.ElasticLoadBalancer rectangle "==Route 53\n<size:10>[Infrastructure Node]</size>\n\nHighly available and scalable cloud DNS service." <<Live.AmazonWebServices.USEast1.Route53>> as Live.AmazonWebServices.USEast1.Route53 } } Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 : "<color:#707070>Reads from and writes to\n<color:#707070><size:8>[MySQL Protocol/SSL]</size>" Live.AmazonWebServices.USEast1.Route53 .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.ElasticLoadBalancer : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" Live.AmazonWebServices.USEast1.ElasticLoadBalancer .[#707070,thickness=2].> Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 : "<color:#707070>Forwards requests to\n<color:#707070><size:8>[HTTPS]</size>" @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
C4-PlantUML definitions are available via the Structurizr CLI export command,
using the -format plantuml/c4plantuml
parameter.
@startuml title Spring PetClinic - Deployment - Live left to right direction !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Deployment.puml Deployment_Node(Live.AmazonWebServices, "Amazon Web Services", $tags="Element+Deployment Node+Amazon Web Services - Cloud") { Deployment_Node(Live.AmazonWebServices.USEast1, "US-East-1", $tags="Element+Deployment Node+Amazon Web Services - Region") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS, "Amazon RDS", $tags="Element+Deployment Node+Amazon Web Services - RDS") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL, "MySQL", $tags="Element+Deployment Node+Amazon Web Services - RDS MySQL instance") { ContainerDb(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Database", "Relational database schema", "Stores information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Database+Container Instance") } } Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup, "Autoscaling group", $tags="Element+Deployment Node+Amazon Web Services - Auto Scaling") { Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2, "Amazon EC2", $tags="Element+Deployment Node+Amazon Web Services - EC2") { Container(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Web Application", "Java and Spring Boot", "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Container Instance") } } Deployment_Node(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Elastic Load Balancer", $descr="Automatically distributes incoming application traffic.", $tags="Element+Infrastructure Node+Amazon Web Services - Elastic Load Balancing") Deployment_Node(Live.AmazonWebServices.USEast1.Route53, "Route 53", $descr="Highly available and scalable cloud DNS service.", $tags="Element+Infrastructure Node+Amazon Web Services - Route 53") } } Rel_D(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Reads from and writes to", "MySQL Protocol/SSL", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.Route53, Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Forwards requests to", "HTTPS", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Forwards requests to", "HTTPS", $tags="Relationship") SHOW_LEGEND() @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Deployment.puml Deployment_Node(Live.AmazonWebServices, "Amazon Web Services", $tags="Element+Deployment Node+Amazon Web Services - Cloud") { Deployment_Node(Live.AmazonWebServices.USEast1, "US-East-1", $tags="Element+Deployment Node+Amazon Web Services - Region") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS, "Amazon RDS", $tags="Element+Deployment Node+Amazon Web Services - RDS") { hide Live.AmazonWebServices.USEast1.AmazonRDS Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL, "MySQL", $tags="Element+Deployment Node+Amazon Web Services - RDS MySQL instance") { hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL ContainerDb(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Database", "Relational database schema", "Stores information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Database+Container Instance") hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup, "Autoscaling group", $tags="Element+Deployment Node+Amazon Web Services - Auto Scaling") { hide Live.AmazonWebServices.USEast1.Autoscalinggroup Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2, "Amazon EC2", $tags="Element+Deployment Node+Amazon Web Services - EC2") { hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 Container(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Web Application", "Java and Spring Boot", "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Container Instance") hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } Deployment_Node(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Elastic Load Balancer", $descr="Automatically distributes incoming application traffic.", $tags="Element+Infrastructure Node+Amazon Web Services - Elastic Load Balancing") hide Live.AmazonWebServices.USEast1.ElasticLoadBalancer Deployment_Node(Live.AmazonWebServices.USEast1.Route53, "Route 53", $descr="Highly available and scalable cloud DNS service.", $tags="Element+Infrastructure Node+Amazon Web Services - Route 53") } } Rel_D(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Reads from and writes to", "MySQL Protocol/SSL", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.Route53, Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Forwards requests to", "HTTPS", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Forwards requests to", "HTTPS", $tags="Relationship") SHOW_LEGEND() @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Deployment.puml Deployment_Node(Live.AmazonWebServices, "Amazon Web Services", $tags="Element+Deployment Node+Amazon Web Services - Cloud") { Deployment_Node(Live.AmazonWebServices.USEast1, "US-East-1", $tags="Element+Deployment Node+Amazon Web Services - Region") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS, "Amazon RDS", $tags="Element+Deployment Node+Amazon Web Services - RDS") { hide Live.AmazonWebServices.USEast1.AmazonRDS Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL, "MySQL", $tags="Element+Deployment Node+Amazon Web Services - RDS MySQL instance") { hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL ContainerDb(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Database", "Relational database schema", "Stores information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Database+Container Instance") hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup, "Autoscaling group", $tags="Element+Deployment Node+Amazon Web Services - Auto Scaling") { hide Live.AmazonWebServices.USEast1.Autoscalinggroup Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2, "Amazon EC2", $tags="Element+Deployment Node+Amazon Web Services - EC2") { hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2 Container(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Web Application", "Java and Spring Boot", "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Container Instance") hide Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1 } } Deployment_Node(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Elastic Load Balancer", $descr="Automatically distributes incoming application traffic.", $tags="Element+Infrastructure Node+Amazon Web Services - Elastic Load Balancing") Deployment_Node(Live.AmazonWebServices.USEast1.Route53, "Route 53", $descr="Highly available and scalable cloud DNS service.", $tags="Element+Infrastructure Node+Amazon Web Services - Route 53") } } Rel_D(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Reads from and writes to", "MySQL Protocol/SSL", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.Route53, Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Forwards requests to", "HTTPS", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Forwards requests to", "HTTPS", $tags="Relationship") SHOW_LEGEND() @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Deployment.puml Deployment_Node(Live.AmazonWebServices, "Amazon Web Services", $tags="Element+Deployment Node+Amazon Web Services - Cloud") { Deployment_Node(Live.AmazonWebServices.USEast1, "US-East-1", $tags="Element+Deployment Node+Amazon Web Services - Region") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS, "Amazon RDS", $tags="Element+Deployment Node+Amazon Web Services - RDS") { hide Live.AmazonWebServices.USEast1.AmazonRDS Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL, "MySQL", $tags="Element+Deployment Node+Amazon Web Services - RDS MySQL instance") { hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL ContainerDb(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Database", "Relational database schema", "Stores information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Database+Container Instance") hide Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1 } } Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup, "Autoscaling group", $tags="Element+Deployment Node+Amazon Web Services - Auto Scaling") { Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2, "Amazon EC2", $tags="Element+Deployment Node+Amazon Web Services - EC2") { Container(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Web Application", "Java and Spring Boot", "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Container Instance") } } Deployment_Node(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Elastic Load Balancer", $descr="Automatically distributes incoming application traffic.", $tags="Element+Infrastructure Node+Amazon Web Services - Elastic Load Balancing") Deployment_Node(Live.AmazonWebServices.USEast1.Route53, "Route 53", $descr="Highly available and scalable cloud DNS service.", $tags="Element+Infrastructure Node+Amazon Web Services - Route 53") } } Rel_D(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Reads from and writes to", "MySQL Protocol/SSL", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.Route53, Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Forwards requests to", "HTTPS", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Forwards requests to", "HTTPS", $tags="Relationship") SHOW_LEGEND() @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
@startuml title Spring PetClinic - Deployment - Live left to right direction !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml !include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Deployment.puml Deployment_Node(Live.AmazonWebServices, "Amazon Web Services", $tags="Element+Deployment Node+Amazon Web Services - Cloud") { Deployment_Node(Live.AmazonWebServices.USEast1, "US-East-1", $tags="Element+Deployment Node+Amazon Web Services - Region") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS, "Amazon RDS", $tags="Element+Deployment Node+Amazon Web Services - RDS") { Deployment_Node(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL, "MySQL", $tags="Element+Deployment Node+Amazon Web Services - RDS MySQL instance") { ContainerDb(Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Database", "Relational database schema", "Stores information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Database+Container Instance") } } Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup, "Autoscaling group", $tags="Element+Deployment Node+Amazon Web Services - Auto Scaling") { Deployment_Node(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2, "Amazon EC2", $tags="Element+Deployment Node+Amazon Web Services - EC2") { Container(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Web Application", "Java and Spring Boot", "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets.", $tags="Element+Container+Container Instance") } } Deployment_Node(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Elastic Load Balancer", $descr="Automatically distributes incoming application traffic.", $tags="Element+Infrastructure Node+Amazon Web Services - Elastic Load Balancing") Deployment_Node(Live.AmazonWebServices.USEast1.Route53, "Route 53", $descr="Highly available and scalable cloud DNS service.", $tags="Element+Infrastructure Node+Amazon Web Services - Route 53") } } Rel_D(Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, Live.AmazonWebServices.USEast1.AmazonRDS.MySQL.Database_1, "Reads from and writes to", "MySQL Protocol/SSL", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.Route53, Live.AmazonWebServices.USEast1.ElasticLoadBalancer, "Forwards requests to", "HTTPS", $tags="Relationship") Rel_D(Live.AmazonWebServices.USEast1.ElasticLoadBalancer, Live.AmazonWebServices.USEast1.Autoscalinggroup.AmazonEC2.WebApplication_1, "Forwards requests to", "HTTPS", $tags="Relationship") SHOW_LEGEND() @enduml
(this will send your diagram content to https://plantuml.com/plantuml)
Mermaid definitions are available via the Structurizr CLI export command,
using the -format mermaid
parameter. Your Mermaid configuration will need to include "securityLevel": "loose"
to render this definition correctly.
graph LR linkStyle default fill:#ffffff subgraph 5 [Amazon Web Services] style 5 fill:#ffffff,stroke:#232f3e,color:#232f3e subgraph 6 [US-East-1] style 6 fill:#ffffff,stroke:#147eba,color:#147eba subgraph 12 [Amazon RDS] style 12 fill:#ffffff,stroke:#3b48cc,color:#3b48cc subgraph 13 [MySQL] style 13 fill:#ffffff,stroke:#3b48cc,color:#3b48cc 14[("<div style='font-weight: bold'>Database</div><div style='font-size: 70%; margin-top: 0px'>[Container: Relational database schema]</div><div style='font-size: 80%; margin-top:10px'>Stores information regarding<br />the veterinarians, the<br />clients, and their pets.</div>")] style 14 fill:#ffffff,stroke:#b2b2b2,color:#000000 end end subgraph 9 [Autoscaling group] style 9 fill:#ffffff,stroke:#cc2264,color:#cc2264 subgraph 10 [Amazon EC2] style 10 fill:#ffffff,stroke:#d86613,color:#d86613 11("<div style='font-weight: bold'>Web Application</div><div style='font-size: 70%; margin-top: 0px'>[Container: Java and Spring Boot]</div><div style='font-size: 80%; margin-top:10px'>Allows employees to view and<br />manage information regarding<br />the veterinarians, the<br />clients, and their pets.</div>") style 11 fill:#ffffff,stroke:#b2b2b2,color:#000000 end end 8("<div style='font-weight: bold'>Elastic Load Balancer</div><div style='font-size: 70%; margin-top: 0px'>[Infrastructure Node]</div><div style='font-size: 80%; margin-top:10px'>Automatically distributes<br />incoming application traffic.</div>") style 8 fill:#ffffff,stroke:#693cc5,color:#693cc5 7("<div style='font-weight: bold'>Route 53</div><div style='font-size: 70%; margin-top: 0px'>[Infrastructure Node]</div><div style='font-size: 80%; margin-top:10px'>Highly available and scalable<br />cloud DNS service.</div>") style 7 fill:#ffffff,stroke:#693cc5,color:#693cc5 end end 11-. "<div>Reads from and writes to</div><div style='font-size: 70%'>[MySQL Protocol/SSL]</div>" .->14 7-. "<div>Forwards requests to</div><div style='font-size: 70%'>[HTTPS]</div>" .->8 8-. "<div>Forwards requests to</div><div style='font-size: 70%'>[HTTPS]</div>" .->11
(this will send your diagram content to https://mermaid.ink)
WebSequenceDiagram definitions are available via the Structurizr CLI export command,
using the -format websequencediagrams
parameter. Only dynamic views are supported.
DOT definitions are available via the Structurizr CLI export command,
using the -format dot
parameter.
digraph { compound=true graph [fontname="Arial", rankdir=LR, ranksep=1.0, nodesep=1.0] node [fontname="Arial", shape=box, margin="0.4,0.3"] edge [fontname="Arial"] label=<<br /><font point-size="34">Spring PetClinic - Deployment - Live</font>> subgraph cluster_5 { margin=25 label=<<font point-size="24">Amazon Web Services</font><br /><font point-size="19">[Deployment Node]</font>> labelloc=b color="#232f3e" fontcolor="#232f3e" fillcolor="#ffffff" subgraph cluster_6 { margin=25 label=<<font point-size="24">US-East-1</font><br /><font point-size="19">[Deployment Node]</font>> labelloc=b color="#147eba" fontcolor="#147eba" fillcolor="#ffffff" subgraph cluster_12 { margin=25 label=<<font point-size="24">Amazon RDS</font><br /><font point-size="19">[Deployment Node]</font>> labelloc=b color="#3b48cc" fontcolor="#3b48cc" fillcolor="#ffffff" subgraph cluster_13 { margin=25 label=<<font point-size="24">MySQL</font><br /><font point-size="19">[Deployment Node]</font>> labelloc=b color="#3b48cc" fontcolor="#3b48cc" fillcolor="#ffffff" 14 [id=14,shape=cylinder, label=<<font point-size="34">Database</font><br /><font point-size="19">[Container: Relational database schema]</font><br /><br /><font point-size="24">Stores information regarding<br />the veterinarians, the<br />clients, and their pets.</font>>, style=filled, color="#b2b2b2", fillcolor="#ffffff", fontcolor="#000000"] } } subgraph cluster_9 { margin=25 label=<<font point-size="24">Autoscaling group</font><br /><font point-size="19">[Deployment Node]</font>> labelloc=b color="#cc2264" fontcolor="#cc2264" fillcolor="#ffffff" subgraph cluster_10 { margin=25 label=<<font point-size="24">Amazon EC2</font><br /><font point-size="19">[Deployment Node]</font>> labelloc=b color="#d86613" fontcolor="#d86613" fillcolor="#ffffff" 11 [id=11,shape=rect, label=<<font point-size="34">Web Application</font><br /><font point-size="19">[Container: Java and Spring Boot]</font><br /><br /><font point-size="24">Allows employees to view and<br />manage information regarding<br />the veterinarians, the<br />clients, and their pets.</font>>, style=filled, color="#b2b2b2", fillcolor="#ffffff", fontcolor="#000000"] } } 8 [id=8,shape=rect, label=<<font point-size="34">Elastic Load Balancer</font><br /><font point-size="19">[Infrastructure Node]</font><br /><br /><font point-size="24">Automatically distributes<br />incoming application traffic.</font>>, style=filled, color="#693cc5", fillcolor="#ffffff", fontcolor="#693cc5"] 7 [id=7,shape=rect, label=<<font point-size="34">Route 53</font><br /><font point-size="19">[Infrastructure Node]</font><br /><br /><font point-size="24">Highly available and scalable<br />cloud DNS service.</font>>, style=filled, color="#693cc5", fillcolor="#ffffff", fontcolor="#693cc5"] } } 11 -> 14 [id=15, label=<<font point-size="24">Reads from and writes to</font><br /><font point-size="19">[MySQL Protocol/SSL]</font>>, style="dashed", color="#707070", fontcolor="#707070"] 7 -> 8 [id=16, label=<<font point-size="24">Forwards requests to</font><br /><font point-size="19">[HTTPS]</font>>, style="dashed", color="#707070", fontcolor="#707070"] 8 -> 11 [id=17, label=<<font point-size="24">Forwards requests to</font><br /><font point-size="19">[HTTPS]</font>>, style="dashed", color="#707070", fontcolor="#707070"] }
Ilograph definitions are available via the Structurizr CLI export command,
using the -format ilograph
parameter. A single Ilograph export contains the model and all views.
resources: - id: "1" name: "Spring PetClinic" subtitle: "[Software System]" description: "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets." backgroundColor: "#ffffff" color: "#000000" children: - id: "2" name: "Web Application" subtitle: "[Container: Java and Spring Boot]" description: "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets." backgroundColor: "#ffffff" color: "#000000" - id: "3" name: "Database" subtitle: "[Container: Relational database schema]" description: "Stores information regarding the veterinarians, the clients, and their pets." backgroundColor: "#ffffff" color: "#000000" - id: "5" name: "Amazon Web Services" subtitle: "[Deployment Node]" backgroundColor: "#ffffff" color: "#232f3e" children: - id: "6" name: "US-East-1" subtitle: "[Deployment Node]" backgroundColor: "#ffffff" color: "#147eba" children: - id: "12" name: "Amazon RDS" subtitle: "[Deployment Node]" backgroundColor: "#ffffff" color: "#3b48cc" children: - id: "13" name: "MySQL" subtitle: "[Deployment Node]" backgroundColor: "#ffffff" color: "#3b48cc" children: - id: "14" name: "Database" subtitle: "[Container: Relational database schema]" description: "Stores information regarding the veterinarians, the clients, and their pets." backgroundColor: "#ffffff" color: "#000000" - id: "9" name: "Autoscaling group" subtitle: "[Deployment Node]" backgroundColor: "#ffffff" color: "#cc2264" children: - id: "10" name: "Amazon EC2" subtitle: "[Deployment Node]" backgroundColor: "#ffffff" color: "#d86613" children: - id: "11" name: "Web Application" subtitle: "[Container: Java and Spring Boot]" description: "Allows employees to view and manage information regarding the veterinarians, the clients, and their pets." backgroundColor: "#ffffff" color: "#000000" - id: "7" name: "Route 53" subtitle: "[Infrastructure Node]" description: "Highly available and scalable cloud DNS service." backgroundColor: "#ffffff" color: "#693cc5" - id: "8" name: "Elastic Load Balancer" subtitle: "[Infrastructure Node]" description: "Automatically distributes incoming application traffic." backgroundColor: "#ffffff" color: "#693cc5" perspectives: - name: Static Structure relations: - from: "2" to: "3" label: "Reads from and writes to" description: "MySQL Protocol/SSL" color: "#707070" - name: Deployment - Live relations: - from: "11" to: "14" label: "Reads from and writes to" description: "MySQL Protocol/SSL" color: "#707070" - from: "7" to: "8" label: "Forwards requests to" description: "HTTPS" color: "#707070" - from: "8" to: "11" label: "Forwards requests to" description: "HTTPS" color: "#707070"
The Structurizr DSL (as mentioned on the ThoughtWorks Tech Radar - Techniques - Diagrams as code) allows you to create multiple diagrams based upon the C4 model, in multiple output formats, from a single DSL source file.