We are Architect

1. AWS: 3티어 아키텍처 란? 본문

Cloud/AWS

1. AWS: 3티어 아키텍처 란?

the best infra 2024. 11. 16. 17:07

 

 

* 티어 란?

- 큰 하나의 시스템을 여러 계층으로 나눠서 그 계층을 의미하는 말이 '티어'이다. 티어 마다 하나의 서버계층이라고 생각.

- 각 티어들은 각자의 역할이 존재한다. 

 

 

* 3티어 아키텍처 란 무엇인가?

- 어떠한 플랫폼을 3가지 계층으로 나눈 형태.

- 프레젠테이션 계층: 사용자와 교류가 있는 계층으로 GUI 및 사용자 인터페이스(브라우저)등을 제공하는 계층이다.

흔히 프론트 엔드라고도 부르며 데이터를 처리하지는 않는다.  ex) 웹 서버

- 어플리케이션 계층: 프레젠테이션 계층과 데이터 계층으로부터 요청을 주고받는 계층으로 비즈니스 로직을 처리하는 계층이다. 프레젠테이션 계층으로부터 받은 요청을 처리하고 데이터 계층과 상호작용하여 데이터를 가져오거나 저장한다. ex) 이 계층은 java, php, python등의 언어로 구현되며 서버 측에서 동작.

- 데이터 계층: 데이터베이스를 관리하는 계층으로 실제 데이터를 저장하고 검색하는 역할. ex) MySql, MongoDB

 

 

* 3티어 계층의 장점과 단점

[ 장점 ]

- 유지보수의 용이성: 계층으로 나눠져 있어서 서로 영향을 덜 받음. 

- 확장성: 계층별로 독립적인 확장 가능.

- 재사용성: 모듈별로 나눠져 있어서 부분별로 재사용이 가능.

- 보안 강화: 계층마다 접근하는 방법이 다르기 때문에 보안을 강화할 수 있음.

- 부하 분산: 별도의 서버에서 동작을 하기 때문에 부하분산이 가능.

[ 단점 ]

- 복잡성: 계층별로 서비스가 늘어나면 복잡해질수 있고 추가하는데도 힘들다. 

- 성능 저하: 여러 단계를 거치기 때문에 응답시간이 지연될 수도 있다. 

- 운용 비용 증가: 나눈 계층만큼 서버를 증설해야 하기 때문에 비용이 증가될 수 있다. 

 

 

* 다음 시간부터는 해당 아키텍처를 AWS에서 구현해 보겠다. 

 

 

 

 

* 참고 출처: https://jaws-coding.tistory.com/9