서버리스 컴퓨팅 환경에서 상태 저장 함수(stateful functions)를 작성할 수 있도록 하는 Azure Functions의 기능이다. Azure Functions 프로그래밍 모델에서 오케스트레이터 함수를 작성하여 상태 저장 워크플로를 정의하고, 엔터티 함수를 작성하여 상태 저장 엔터티를 정의한다.
더 적은 코드를 쓰고, 인프라를 적게 유지하고, 비용을 절감할 수 있도록 하는 서버리스 솔루션.
stateless이기 때문에 다양한 함수들을 쉽게 연결하지 못한다.
시스템 관리에서 오케스트레이션은 컴퓨터 시스템과 소프트웨어의 자동화된 구성, 조율, 관리를 뜻한다.
오케스트레이터 함수는 작업이 실행되는 방법 및 작업이 실행되는 순서를 설명하고, 오케스트레이션을 설명한다. 오케스트레이션에는 활동 함수, 하위 오케스트레이션, 외부 이벤트 대기, HTTP 및 타이머를 비롯한 다양한 유형의 작업이 포함될 수 있다.
Durable Functions에 대한 기본 사용 사례는 서버리스 애플리케이션에서 복잡한 상태 저장 조정 요구 사항을 단순화하는 것이다.
일련의 함수가 특정 순서로 실행된다. 한 함수의 출력은 다른 함수의 입력에 적용된다.
여러 함수를 병렬로 실행한 다음 모든 함수가 완료될 때까지 기다린다.
외부 클라이언트와 장기 실행 작업의 상태를 조정하는 문제를 해결한다. 일반적으로 HTTP 엔드포인트에서 장기 실행 작업을 트리거하도록 한다.
유연한 되풀이 프로세스를 나타낸다. 예를 들어 특정 조건이 충족될 때까지 폴링한다.
시간 제한 및 보정 논리를 사용하여 사용자와의 상호 작용을 허용할 수 있다.
일정 기간 동안의 이벤트 데이터를 주소 지정 가능한 단일 엔터티로 집계하는 것이다.