애플리케이션에서 Amazon SWF를 사용하여 쉽게 워크플로를 관리할 수 있습니다. Amazon SWF 서비스는 다음과 같은 애플리케이션의 모든 개별 구성 요소에 대해 코디네이션 허브 역할을 합니다.
- 애플리케이션 상태 유지관리
- 워크플로 실행 추적 및 진행 상황 로깅
- 작업 중지 및 디스패치
- 각 애플리케이션 호스트에 할당하여 실행할 작업 제어
Amazon SWF를 사용하려면 다음을 수행하면 됩니다.
- AWS Management Console 또는 Amazon SWF API를 사용하여 워크플로 이름을 지정합니다.
- Amazon SWF API를 사용하여 새 워크플로를 "시작"합니다. 그러면 "워크플로 실행"이라고 부르는 일련의 특정 워크플로 작업이 시작됩니다.
- 워커 시스템에서 Amazon SWF API를 사용하여 워크플로 실행에 대한 작업 순서 확정, 조건부 흐름 관리, 루프 실행을 수행합니다. 참고로 워커 시스템에서 "워커"는 특정 작업을 처리하는 애플리케이션의 한 구성 요소를 지칭합니다.
- 워커 시스템의 Amazon SWF API를 사용하여 클라우드 또는 온 프레미스에서 워크플로 작업을 요청하고 실행합니다.
- AWS Management Console에서 워크플로 실행 및 관련 작업의 상태와 진행 상황을 모니터링합니다.
AWS Management Console의 연습용 샘플을 통해 샘플 애플리케이션을 등록하고 실행하는 단계를 진행해 볼 수 있습니다. Amazon SWF 서비스 및 API에 대한 자세한 내용은 설명서를 참조하십시오.
무료로 AWS 시작
무료 계정 생성또는 콘솔에 로그인
AWS 프리 티어에는 Amazon Simple Workflow(SWF) 사용과 함께 10,000개의 활동 작업, 30,000개의 워크플로/일, 1,000개의 실행 작업이 포함되어 있습니다.
Amazon SWF는 확장성과 복원력이 뛰어난 애플리케이션 구축용 워크플로 서비스로서 완전한 관리성을 제공합니다. Amazon SWF가 제공하는 간단한 API 호출 기능은 모든 종류의 언어로 작성된 코드로 실행될 수 있으며, EC2 인스턴스는 물론 인터넷에 액세스할 수 있는 전 세계 모든 장소의 모든 컴퓨터에서 실행 가능합니다.
Amazon SWF는 애플리케이션 호스트와 상호 작용하는 코디네이션 허브 역할을 합니다. 사용자는 관련 작업과 함께 워크플로를 만들고 적용할 조건 논리가 있는 경우 지정하여 Amazon SWF에 저장합니다. 워크플로를 실행할 때마다 각 워크플로 실행은 개별적으로 이루어진 것으로 간주됩니다. 워크플로 실행 시에 수행할 다양한 태스크를 요청하도록 애플리케이션 구성 요소를 프로그래밍하십시오. 그러면 Amazon SWF가 호스트에서 사용자가 지정한 순서대로 작업이 실행되도록 조정합니다. 호스트가 클라우드에 있든 온 프레미스에 있든 상관 없습니다. 애플리케이션은 API를 사용하여 Amazon SWF와 통신하여 작업의 성공 또는 실패 여부를 기록합니다. Amazon SWF는 다음 워크플로 작업을 애플리케이션 호스트에 할당하거나 실패한 작업을 사용자의 비즈니스 논리에 따라 다시 실행함으로써 일련의 작업을 계속 진행하게 됩니다.
Amazon SWF의 워크플로 실행을 시작하려면 AWS Management Console에 로그인하십시오. 또는 Amazon SWF API를 통해 워크플로 실행을 시작할 수 있습니다. Amazon SWF의 단순한 웹 서비스 인터페이스는 사용이 간편하고 유연성이 뛰어납니다.
- StartWorkflowExecution: 일련의 워크플로 작업을 시작하고 첫 번째 작업을 애플리케이션 호스트에서 실행할 수 있는 상태로 만듭니다.
- DescribeWorkflowExecution: 워크플로 실행 및 작업의 상태를 알려줍니다.
- PollForActivityTask: 클라우드 또는 온 프레미스에서 사용자의 애플리케이션 호스트가 연속 루프로 워크플로 작업을 요청하고 실행합니다.
- RespondActivityTaskCompleted: 애플리케이션 호스트가 Amazon SWF에 작업이 성공적으로 완료되었음을 알립니다. Amazon SWF는 다음 작업을 애플리케이션 호스트에서 실행 가능한 상태로 만들어 워크플로 실행을 계속 진행합니다.
- TerminateWorkflowExecution: 특정 워크플로 실행의 진행을 중지합니다. Amazon SWF는 더 이상 이 특정 워크플로 실행을 애플리케이션 호스트에 할당하지 않습니다.
이 서비스 사용은 Amazon Web Services 고객 계약에 따릅니다.