AWS Step Functions를 사용하면 시각적 워크플로를 사용해 분산 애플리케이션 및 마이크로서비스의 구성 요소를 손쉽게 조정할 수 있습니다. 각각 기능을 수행하는 개별 구성 요소를 사용하여 애플리케이션을 구축하면 애플리케이션을 빠르게 확장하거나 변경할 수 있습니다. Step Functions는 애플리케이션의 기능을 통해 구성 요소와 단계를 조정할 수 있는 안정적인 방법입니다. Step Functions에서는 애플리케이션의 구성 요소를 일련의 단계로 배열 및 시각화할 수 있는 그래픽 콘솔을 제공합니다. 그러므로 손쉽게 다단계 애플리케이션을 구축하고 실행할 수 있습니다. Step Functions가 자동으로 각 단계를 트리거 및 추적하고 오류가 발생할 경우 재시도하므로 애플리케이션이 의도대로 정상적으로 실행됩니다. Step Functions는 각 단계의 상태를 기록합니다. 따라서 무언가 잘못된 경우 빠르게 문제를 진단하고 디버깅할 수 있습니다. 코드를 작성하지 않고 단계를 변경 및 추가할 수 있어 간편하게 애플리케이션을 개선하고 더 빠르게 혁신할 수 있습니다.

사용자가 애플리케이션을 어떤 규모로도 운영할 수 있도록 AWS Step Functions가 작업 및 기본 인프라를 관리합니다.

AWS Step Functions는 현재 상용 버전으로 사용할 수 있음

AWS Step Functions 무료 체험

AWS Step Functions 프리 티어는 매월 4,000건의 상태 변화를 포함합니다.  

AWS 프리 티어 세부 정보 참조 »

상태 머신

AWS Step Functions는 클라우드 상태 머신을 생성하여 안정적이고 확장 가능한 방식으로 애플리케이션의 단계를 실행하고 구성 요소를 조정합니다. 상태 머신이 프로그래밍 분야의 핵심 개념이 된지는 상당히 오래되었고, 많은 수의 작은 구성 요소를 빠르고 예측 가능한 성능으로 조정하는 데 적합합니다. 상태 머신은 각각 특정 작업을 수행하는 서로 다른 상태로 구성되어 있습니다. 상태 머신은 구성 요소 간에 데이터를 전달하고 애플리케이션 작업의 다음 단계를 결정합니다. 이를 통해 애플리케이션의 로직을 서로 연결된 일련의 상태로 구현하고 변경할 수 있습니다.
 
Step Functions 콘솔을 사용하는 것 외에도 AWS CloudFormation 템플릿을 사용하여 Step Functions 상태 머신을 생성 및 삭제하고, Amazon API Gateway 또는 Amazon CloudWatch Events를 사용하여 상태 머신을 시작할 수 있습니다.

그래픽 콘솔

AWS Step Functions는 그래픽 콘솔을 제공하여 시각적 워크플로를 통해 분산 애플리케이션의 구성 요소를 손쉽게 조정할 수 있게 해줍니다. 간단한 명령을 사용해 애플리케이션의 각 단계를 정의하면 Step Functions가 자동으로 처음부터 끝까지 모든 단계를 시각적 워크플로 형태로 그래프로 표시합니다. 애플리케이션을 시작하는 것은 버튼을 누르는 것만큼 간단하고 그런 다음 단계가 실행되는 것을 그래프로 보면 되므로 모든 것이 의도대로 정상적으로 동작하는지 신속하게 확인할 수 있습니다. 콘솔은 오류를 명확하게 표시하므로 신속하게 근본 원인을 찾아 문제를 해결할 수 있습니다.

오류 처리 기능 내장

AWS Step Functions는 각 단계의 상태를 추적하고 내장된 재시도 및 대체 기능을 통해 자동으로 오류를 처리합니다. 작업을 완료하는 데 몇 초 또는 몇 달이 걸리든 관계없습니다. Step Functions를 사용하면 실패하거나 제한 시간이 초과한 작업을 자동으로 재시도하고, 특정 오류를 발견하여 적절하게 복구하며, 모든 방법이 실패하면 지정된 정리 및 복구 코드로 대체할 수 있습니다.

Automatic Scaling

AWS Step Functions는 변화하는 워크로드에 대응하여 애플리케이션의 단계를 실행할 수 있도록 작업과 기본 컴퓨팅을 자동으로 확장합니다. Step Functions는 자동으로 확장되므로 요청 빈도가 증가하더라도 애플리케이션 워크플로의 성능이 일관되게 높게 유지될 수 있습니다.

고가용성

AWS Step Functions는 내결함성을 기본적으로 제공합니다. Step Functions는 각 리전에 있는 여러 가용 영역의 서비스 용량을 유지 관리하여 개별 시스템이나 데이터 센터 시설에 장애가 발생해도 애플리케이션 워크플로를 보호할 수 있습니다. 애플리케이션을 실행하는 Step Functions와 상태 머신은 예측 가능하고 안정적인 운영 성능을 제공하도록 설계되었습니다. 따라서 서비스 자체와 서비스가 운영하는 애플리케이션 워크플로에서 모두 고가용성을 유지할 수 있습니다. 유지 관리 기간이나 예약된 가동 중지 시간이 없습니다.

실행 이력

AWS Step Functions는 실시간 진단과 대시보드를 제공하고, Amazon CloudWatch 및 AWS CloudTrail과 통합되며, 모든 실행 작업을 기록하므로 무언가 잘못되는 경우 어디가 잘못되었는지 뿐만 아니라 그 이유도 빠르게 파악할 수 있습니다. 전반적인 상태, 실패한 단계, 입력 및 출력을 비롯하여 모든 실행 이력을 시각적 및 프로그래밍 방식으로 볼 수 있으므로 문제를 해결하고 장애를 개선하는 데 필요한 정보가 제공됩니다.

사용량에 따라 지불

AWS Step Functions에서는 애플리케이션 워크플로의 한 단계에서 다음 단계로 전환하는 비용만 지불하면 되고 이를 상태 전환이라고 부릅니다. 각 상태가 유지된 기간과 관계없이(최대 1년) 상태 전환에 따라 청구 금액이 정산됩니다. 사용량에 따라 지불하는 방식이란 서비스가 실행 몇 개에서 수천만 개로 비용 효율적으로 손쉽게 확장될 수 있다는 뜻입니다.

관리 보안

AWS Step Functions는 AWS Identity and Access Management(IAM)와 통합됩니다. IAM 정책은 Step Functions API에 대한 액세스를 제어하는 데 사용할 수 있습니다.