웹 애플리케이션
웹 애플리케이션을 위한 아키텍처 패턴
표 3 - 웹 애플리케이션 구성 요소
티어 | 구성 요소 |
---|---|
프레젠테이션 |
프런트 엔드 애플리케이션은 create-react-app과 같은 React 유틸리티에 의해 생성되는 모든 정적 콘텐츠(HTML, CSS, JavaScript 및 이미지)입니다. Amazon CloudFront는 이러한 모든 객체를 호스팅합니다. 웹 애플리케이션을 사용하면 모든 리소스를 브라우저로 다운로드하고 브라우저에서 실행을 시작합니다. 웹 애플리케이션은 API를 호출하는 백엔드에 연결합니다. |
로직 |
로직 계층은 API Gateway REST API가 앞에 있는 Lambda 함수를 사용하여 구축됩니다. 이 아키텍처는 노출된 여러 서비스를 보여줍니다. 애플리케이션의 서로 다른 측면을 각각 처리하는 여러 가지 Lambda 함수가 있습니다. Lambda 함수는 API Gateway 뒤에 있으며 API URL 경로를 사용하여 액세스할 수 있습니다. 사용자 인증은 Amazon Cognito 사용자 풀 또는 페더레이션 사용자 공급자를 사용하여 처리됩니다. API Gateway는 Amazon Cognito와의 즉시 사용 가능한 통합을 사용합니다. 클라이언트는 사용자가 인증된 후에만 JSON 웹 토큰(JWT)을 수신합니다. 이 토큰은 API 호출 시 사용해야 합니다. 각 Lambda 함수에는 적절한 데이터 원본에 대한 액세스를 제공하기 위해 고유한 IAM 역할이 할당됩니다. |
데이터 |
이 특정 예에서는 DynamoDB가 데이터 스토리지에 사용되지만 사용 사례 및 사용 시나리오에 따라 다른 목적별 Amazon 데이터베이스 또는 스토리지 서비스를 사용할 수 있습니다. |