AWS(Amazon Web Service)

[AWS] 솔루션 설계자 관점의 Serverless - Step Functions

yunseohhe 2024. 12. 17. 17:24

AWS Step Functions

  • 서버리스 워크플로를 시각적으로 구성할 수 있는 기능이다.
  • 주로 람다 함수를 오케스트레이션 하는 데 활용한다.
  • 그래프를 만드는데 각 그래프 단계별로 해당 단계의 결과에 따라 다음으로 수행하는 작업이 뭔지 정의한다.
  • 좀 복잡한 워크플로를 만들어 AWS에서 실행시킬 수 있는 편리한 도구이다.
  • Step functions가 제공하는 기능으로는 시퀀싱, 병행 실행, 조건 설정, 타임아웃, 에러 처리하기 등이 있다.
  • 람다 함수만 처리하는 게 아니라 EC2랑도 연동할 수 있고, ECS, 온프레미스 서버 또 API Gateway, SQS queues, 등등 다양한 AWS 서비스를 워크플로에 넣을 수 있다.
  • 워크플로에 사람이 개입해서 승인을 해야만 진행되는 단게를 설정할 수 있다.
      - 예를 들어, 어떤 지점에 이르러서는 사람이 결과를 확인하고 승인을 하면 다음 단계로 넘어 가고, 아니면 워크플로가 멈춰 실패하게 한다.
  • 다양한 사용처가 있는데, 예를 들어 주문 이행이나 데이터 처리, 웹 애플리케이션 등 구성하기 복잡한 워크플로를 시각적으로 구성하려고 할 때 사용한다.