본문

[AWS] 일반적인 서버리스 아키텍처

반응형

https://www.pulumi.com/templates/serverless-application/aws/

 

 

아래는 일반적인 서버리스 아키텍처의 구성 요소와 간략한 설명입니다:

  1. AWS Lambda:
    • 서버리스 컴퓨팅 서비스로, 코드를 실행할 컴퓨팅 자원을 프로비저닝하거나 관리하지 않고도 이벤트에 응답하고 작업을 수행할 수 있습니다.
    • 예를 들어, Lambda 함수를 사용하여 데이터 처리, 이미지 리사이징, 백그라운드 작업 등을 수행할 수 있습니다.
  2. Amazon API Gateway:
    • RESTful 또는 WebSocket API를 만들고 관리할 수 있는 서비스로, 클라이언트 애플리케이션과 Lambda 함수를 연결합니다.
    • API Gateway를 사용하여 HTTP 요청을 Lambda 함수로 라우팅하고 인증, 인가, 요청 및 응답 변환 등을 구성할 수 있습니다.
  3. Amazon S3:
    • 객체 스토리지 서비스로, 정적 웹 사이트 호스팅, 파일 저장, 백업 등 다양한 용도로 사용할 수 있습니다.
    • 정적 웹 사이트 호스팅을 통해 웹 애플리케이션의 정적 자산(HTML, CSS, JavaScript)을 저장하고 서빙할 수 있습니다.
  4. Amazon DynamoDB 또는 Amazon Aurora Serverless:
    • 서버리스 데이터베이스 서비스로, 스케일링 및 관리가 자동으로 처리됩니다.
    • 데이터베이스 저장소 및 조회에 사용되며 Lambda 함수와 통합하여 데이터 처리에 활용할 수 있습니다.
  5. AWS Step Functions:
    • 상태 기반 워크플로우를 생성하고 실행하는 서비스로, 여러 Lambda 함수 간의 복잡한 워크플로우를 조정합니다.
    • 비즈니스 로직의 스텝별 실행 및 오류 처리에 사용됩니다.
  6. AWS EventBridge 또는 Amazon SNS:
    • 이벤트 기반 서비스로, 다양한 이벤트를 수집하고 이벤트를 처리하거나 람다 함수를 호출할 수 있습니다.
    • 애플리케이션 간 이벤트 연동 및 비동기 통신에 활용됩니다.
  7. AWS CloudWatch:
    • 모니터링 및 로깅 서비스로, Lambda 함수 및 다른 리소스의 성능 모니터링 및 이벤트 기록에 사용됩니다.
  8. AWS Identity and Access Management (IAM):
    • AWS 서비스 및 리소스에 대한 액세스 및 권한을 관리하는 서비스로, 보안 및 인증을 구성합니다.

서버리스 아키텍처를 구축할 때는 필요한 서비스를 조합하여 애플리케이션의 요구 사항에 맞게 설계하고 배포합니다. 각 서비스는 사용량에 따라 비용이 청구되므로 효율적으로 활용하는 것이 중요합니다. AWS의 다양한 서비스와 관련 문서를 참고하여 원하는 서버리스 아키텍처를 구성하실 수 있습니다.

 

 

참조 아키텍처 예제 및 모범 사례 - AWS - Amazon

 

반응형

공유

댓글