728x90
3-tier 아키텍처는 소프트웨어 개발에서 일반적으로 사용되는 아키텍처 패턴 중 하나입니다. 이 아키텍처는 프론트엔드, 백엔드 및 데이터베이스 계층으로 구성됩니다.
Presentation Layer(프레젠테이션 계층)
Presentation Layer 또는 클라이언트 계층은 사용자와 상호작용하는 계층입니다. 이 계층에는 사용자 인터페이스와 브라우저가 포함됩니다. 사용자의 요청은 Presentation Layer를 통해 백엔드에 전달됩니다.
Application Layer(애플리케이션 계층)
Application Layer 또는 서버 계층은 비즈니스 로직이나 데이터 처리를 수행하는 계층입니다. 이 계층은 Presentation Layer와 Data Layer 사이에서 데이터를 처리하고 전달합니다. 이 계층은 데이터 유효성 검사, 데이터 정합성, 데이터 검색 등을 수행합니다.
Data Layer(데이터 계층)
Data Layer는 데이터를 저장하고 관리하는 계층입니다. 이 계층에는 데이터베이스나 파일 시스템, 스토리지 디바이스 등이 포함됩니다. 이 계층은 데이터를 가져오고 저장하기 위해 백엔드와 통신합니다.
3-tier 아키텍처는 각 계층이 서로 분리되어 있기 때문에, 시스템의 유지보수와 확장성이 용이합니다. 또한 각 계층은 독립적으로 수정이 가능하므로 시스템 전체에 영향을 주지 않고 변경이 가능합니다.
장점
- 유지보수가 용이합니다. 각 계층이 독립적으로 개발 및 변경될 수 있으므로 한 계층이 변경되더라도 다른 계층에 영향을 끼치지 않습니다.
- 확장성이 높습니다. 각 계층이 독립적으로 확장될 수 있으므로 시스템의 규모가 커져도 유연하게 대처할 수 있습니다.
- 각 계층이 명확하게 분리되어 있어 역할이 분명합니다. 이로 인해 개발자들은 구현 방법에 대해 명확한 지침을 따르며 코드를 작성할 수 있습니다.
단점
- 계층이 많아질수록 구현이 복잡해질 수 있습니다. 시스템이 커지면서 많은 계층이 추가되면 전체 시스템이 복잡해지고, 유지보수가 어려워질 수 있습니다.
- 처리 시간이 길어질 수 있습니다. 각 계층을 거쳐야 하므로 처리 시간이 증가할 수 있습니다.
- 계층간의 데이터 전송이 많아질 수 있습니다. 계층을 거치면서 데이터를 전송해야 하므로, 계층간의 데이터 전송이 많아질 수 있습니다.
728x90
'기타' 카테고리의 다른 글
bcrypt (0) | 2023.02.23 |
---|---|
A/B 테스트 (0) | 2023.02.23 |
RICE Score (0) | 2023.02.22 |
ICE Score (0) | 2023.02.22 |
OMTM(One Metric That Matters) (0) | 2023.02.22 |