Proseso Uri
Graphical na pagpapahayag
Nag-iisip Uri
Nakabalangkas na pagpapahayag
Mga Tala Uri
Mahusay na pagpapahayag

Dayagram ng arkitekturaSintaks

Dayagram ng arkitektura

Ang architecture diagram ay ginagamit upang ipakita ang relasyon sa pagitan ng mga service at resource na karaniwan sa cloud o CI/CD deployment. Sa architecture diagram, ang mga service (node) ay konektado sa pamamagitan ng linya. Ang mga kaugnay na service ay maaaring ilagay sa group, upang mas mahusay na maipaliwanag ang paraan ng kanilang organisasyon.

Halimbawa

Code
                            
Kopyahin
Embed
architecture-beta group api(cloud)[API] service db(database)[Database] in api service disk1(disk)[Storage] in api service disk2(disk)[Storage] in api service server(server)[Server] in api db:L -- R:server disk1:T -- B:server disk2:T -- B:db

Syntax

Ang mga building block ng architecture diagram ay: group, service, connection, at connection point.

Para sa sinusuportahang component, ang icon ay idineklara sa pamamagitan ng paglalagay ng icon sa loob ng parenthesis (), at ang label ay idineklara sa pamamagitan ng paglalagay ng teksto sa loob ng square brackets [].

Upang magsimula ng architecture diagram, kailangang gamitin ang architecture-beta syntax, pagkatapos ay ilista ang group, service, connection, at connection point. Bagaman ang 3 building block na ito ay maaaring ideklara sa anumang pagkakasunod-sunod, dapat tiyakin na ang identifier ay nauna nang naideklara ng ibang component.

Group

Ang syntax para sa pagdedeklara ng group ay:

                            
Kopyahin
Embed
group {group id}({icon name})[{title}] (in {parent id})?

Pagkatapos pagsamahin:

                            
Kopyahin
Embed
group public_api(cloud)[Public API]

Gumawa ng group na pinangalanang public_api, gamit ang icon na cloud, at may label na Public API.

Bukod dito, maaaring gamitin ang opsyonal na in syntax upang ilagay ang group sa loob ng ibang group.

                            
Kopyahin
Embed
group private_api(cloud)[Private API] in public_api

Service

Ang syntax para sa pagdedeklara ng service ay:

                            
Kopyahin
Embed
service {service id}({icon name})[{title}] (in {parent id})?

Pagkatapos pagsamahin:

                            
Kopyahin
Embed
service database1(database)[My Database]

Gumawa ng service na pinangalanang database1, gamit ang icon na database, at label na My Database.

Kung ang service ay kabilang sa isang group, maaari mong ilagay ito sa loob nito gamit ang opsyonal na in syntax

                            
Kopyahin
Embed
service database1(database)[My Database] in private_api

Connection

Ang syntax para sa pagdedeklara ng connection ay:

                            
Kopyahin
Embed
{serviceId}{{group}}?:{T|B|L|R} {<}?--{>}? {T|B|L|R}:{serviceId}{{group}}?

Direksyon ng connection

Ang kung saang bahagi ng service lalabas ang connection ay maaaring tukuyin sa pamamagitan ng pagdaragdag ng colon : sa gilid ng service ng connection arrow at pagdaragdag ng L|R|T|B.

Halimbawa:

                            
Kopyahin
Embed
db:R -- L:server

Gumawa ng connection sa pagitan ng service db at server, ang connection na ito ay umaabot mula sa kanang bahagi ng db patungo sa kaliwang bahagi ng server.

                            
Kopyahin
Embed
db:T -- L:server

Gumawa ng 90-degree na connection sa pagitan ng service db at server, ang connection na ito ay lumalabas mula sa tuktok ng db at kaliwang bahagi ng server.

Palaso

Sa pamamagitan ng pagdaragdag ng < bago ang kaliwang direksyon, o > pagkatapos ng kanang direksyon, maaari kang magdagdag ng palaso sa bawat bahagi ng connection.

Halimbawa:

                            
Kopyahin
Embed
subnet:R --> L:gateway

Gumawa ng connection na may palaso na tumuturo sa service na gateway.

Connection sa labas ng group

Upang mailipat ang connection mula sa isang group patungo sa ibang group o service sa loob ng ibang group, maaari mong magdagdag ng {group} modifier pagkatapos ng serviceId.

Halimbawa:

                            
Kopyahin
Embed
service server[Server] in groupOne service subnet[Subnet] in groupTwo server{group}:B --> T:subnet{group}

Gumawa ng connection, na nagsisimula sa groupOne, kumokonekta sa kalapit na posisyon ng server, pagkatapos ay pumapasok sa groupTwo, kumokonekta sa kalapit na posisyon ng subnet.

Tandaan, ang groupId ay hindi maaaring gamitin upang tumukoy ng connection, at ang {group} modifier ay maaari lamang gamitin para sa service sa loob ng group.

Connection point

Ang connection point ay isang espesyal na uri ng node, maaari itong magsilbing potensyal na four-way fork point ng connection.

Ang syntax para sa pagdedeklara ng connection point ay:

                            
Kopyahin
Embed
junction {junction id} (in {parent id})?
Code
                            
Kopyahin
Embed
architecture-beta service left_disk(disk)[Disk] service top_disk(disk)[Disk] service bottom_disk(disk)[Disk] service top_gateway(internet)[Gateway] service bottom_gateway(internet)[Gateway] junction junctionCenter junction junctionRight left_disk:R -- L:junctionCenter top_disk:B -- T:junctionCenter bottom_disk:T -- B:junctionCenter junctionCenter:R -- L:junctionRight top_gateway:B -- T:junctionRight bottom_gateway:T -- B:junctionRight