3Tier-Architecture란 응용 프로그램을 3개의 논리적 및 물리적 컴퓨팅 계층으로 구성하는 방식이다. 이 방식은 각 계층이 분리되어 자체 인프라에서 실행되기 때문에 동시에 개발이 가능하며 다른 계층에 영향을 주지 않으면서 확장이나 업데이트될 수 있다는 장점이 있다.
Web Application 3Tier-Architecture는 위의 그림과 같이 Web Server-WAS-DB Server로 나눌 수 있다.
Web Server 사용자 인터페이스를 지원하는 계층으로 웹 서버, 웹 사이트에 해당한다. 사용자에게 HTTP 요청을 받으면 WAS로 필요한 구성요소 요청을 보내고 받은 응답을 사용자에게 전달하는 역할을 한다.
WAS 어플리케이션 계층에 해당하며, 요청되는 정보를 처리하고 가공하는 역할을 담당한다. 사용자가 Web Server에 HTTP 요청을 하게 되면 WAS에서는 필요한 데이터 쿼리를 DB서버에 요청하고 동적 컨텐츠를 만들어 제공하는 역할을 한다.
DB Server 데이터베이스와 데이터베이스에 접근하여 필요한 데이터를 읽고 쓰는 것을 관리하는 모든 것을 포함한다.
2. 3Tier-Architecture 구성을 위해 알아야 할 요소들
2-1. Amazon Virtual Private Cloud (VPC)
*보안그룹과 NACL의 차이점
2-2. Amazon Elastic Compute Cloud (EC2)
2-3. Elastic Load Balancing (ELB)
2-4. Auto Scaling
2-5. Amazon Elastic Block Store (EBS)
2-6. Amazon Simple Storage Service (S3)
2-7. Amazon Relational Database Service (RDS)
2-8. Amazon CloudFront
> CDN 서비스란? Content Delivery Network의 약자로, 지리적 제약 없이 전 세계 사용자에게 콘텐츠를 빠르고 안전하게 전송하는 기술을 의미한다.