플로우차트
그래픽 표현
마인드맵
구조화된 표현
노트
효율적인 표현

아키텍처 다이어그램구문

아키텍처 다이어그램

아키텍처 다이어그램은 클라우드 또는 CI/CD 배포에서 흔히 볼 수 있는 서비스와 리소스 간의 관계를 보여주는 데 사용됩니다. 아키텍처 다이어그램에서 서비스(노드)는 선으로 연결됩니다. 관련 서비스를 그룹에 배치하여 조직 방식을 더 잘 설명할 수 있습니다.

예시

코드
                            
복사
임베드
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

문법

아키텍처 다이어그램의 구성 요소는 그룹, 서비스, 연결선 및 연결점입니다.

지원 구성 요소의 경우, 아이콘은 소괄호 () 로 아이콘을 감싸 선언하고, 레이블은 대괄호 [] 로 텍스트를 감싸 선언합니다.

아키텍처 다이어그램을 시작하려면 architecture-beta 문법을 사용한 다음 그룹, 서비스, 연결선 및 연결점을 나열해야 합니다. 이 3가지 구성 요소는 임의의 순서로 선언할 수 있지만, 식별자가 다른 구성 요소에 의해 이전에 선언되었는지 확인해야 합니다.

그룹

그룹을 선언하는 문법은 다음과 같습니다:

                            
복사
임베드
group {group id}({icon name})[{title}] (in {parent id})?

조합 후:

                            
복사
임베드
group public_api(cloud)[Public API]

public_api 라는 이름의 그룹을 생성하고, cloud 아이콘을 사용하며, Public API 레이블을 가집니다.

또한 선택적 in 문법을 사용하여 그룹을 다른 그룹 안에 배치할 수 있습니다.

                            
복사
임베드
group private_api(cloud)[Private API] in public_api

서비스

서비스를 선언하는 문법은 다음과 같습니다:

                            
복사
임베드
service {service id}({icon name})[{title}] (in {parent id})?

조합 후:

                            
복사
임베드
service database1(database)[My Database]

database1 이라는 이름의 서비스를 생성하고, database 아이콘을 사용하며, 레이블은 My Database 입니다.

해당 서비스가 어떤 그룹에 속하면 선택적 in 문법을 사용하여 그 안에 배치할 수 있습니다.

                            
복사
임베드
service database1(database)[My Database] in private_api

연결선

연결선을 선언하는 문법은 다음과 같습니다:

                            
복사
임베드
{serviceId}{{group}}?:{T|B|L|R} {<}?--{>}? {T|B|L|R}:{serviceId}{{group}}?

연결선 방향

연결선이 서비스의 어느 쪽에서 나오는지는 연결 화살표의 서비스 측에 콜론 : 을 추가하고 L|R|T|B 를 붙여 지정할 수 있습니다.

예:

                            
복사
임베드
db:R -- L:server

서비스 db 와 server 사이에 연결선을 생성하며, 이 연결선은 db 의 오른쪽에서 server 의 왼쪽으로 연장됩니다.

                            
복사
임베드
db:T -- L:server

서비스 db 와 server 사이에 90도 연결선을 생성하며, 이 연결선은 db 의 상단과 server 의 왼쪽에서 연장됩니다.

화살표

왼쪽 방향 앞에 < 를 추가하거나 오른쪽 방향 뒤에 > 를 추가하여 연결선의 각 측면에 화살표를 추가할 수 있습니다.

예:

                            
복사
임베드
subnet:R --> L:gateway

gateway 서비스를 가리키는 화살표 연결선을 생성합니다.

그룹 외부의 연결선

연결선을 한 그룹에서 다른 그룹이나 다른 그룹 내의 서비스로 이동하려면 serviceId 뒤에 {group} 수정자를 추가할 수 있습니다.

예:

                            
복사
임베드
service server[Server] in groupOne service subnet[Subnet] in groupTwo server{group}:B --> T:subnet{group}

groupOne 에서 출발하여 server 인접 위치에 연결되고, 그런 다음 groupTwo 로 들어가 subnet 인접 위치에 연결되는 연결선을 생성합니다.

주의할 점은 groupId 는 연결선을 지정하는 데 사용할 수 없으며, {group} 수정자는 그룹 내의 서비스에만 사용할 수 있다는 것입니다.

연결점

연결점은 연결선의 잠재적인 사방 분기점 역할을 할 수 있는 특수한 유형의 노드입니다.

연결점을 선언하는 문법은 다음과 같습니다:

                            
복사
임베드
junction {junction id} (in {parent id})?
코드
                            
복사
임베드
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