Durable Functions란?What are Durable Functions?

Durable Functions는 서버리스 환경에서 상태 저장 함수를 작성할 수 있게 해주는 Azure Functions의 확장입니다.Durable Functions are an extension of Azure Functions that lets you write stateful functions in a serverless environment. 확장은 상태, 검사점 및 다시 시작을 관리합니다.The extension manages state, checkpoints, and restarts for you.

이점Benefits

확장을 통해 다음과 같은 이점을 제공할 수 있는 오케스트레이터 함수를 사용하여 상태 저장 워크플로를 정의할 수 있습니다.The extension lets you define stateful workflows using an orchestrator function, which can provide the following benefits:

  • 코드에서 워크플로를 정의할 수 있습니다.You can define your workflows in code. JSON 스키마 또는 디자이너가 필요하지 않습니다.No JSON schemas or designers are needed.
  • 다른 함수를 동기적 및 비동기적으로 호출할 수 있습니다.Other functions can be called both synchronously and asynchronously. 호출된 함수의 출력은 지역 변수에 저장할 수 있습니다.Output from called functions can be saved to local variables.
  • 함수에서 기다릴 때 자동으로 진행 상황 검사점이 설정됩니다.Progress is automatically checkpointed when the function awaits. 프로세스가 재활용되거나 VM이 다시 부팅되더라도 로컬 상태가 손실되지 않습니다.Local state is never lost when the process recycles or the VM reboots.

애플리케이션 패턴Application patterns

Durable Functions에 대한 기본 사용 사례는 서버리스 애플리케이션에서 복잡한 상태 저장 조정 요구 사항을 단순화하는 것입니다.The primary use case for Durable Functions is simplifying complex, stateful coordination requirements in serverless applications. 다음 섹션에서는 Durable Functions를 활용할 수 있는 몇 가지 일반적인 애플리케이션 패턴입니다.The following are some typical application patterns that can benefit from Durable Functions:

지원되는 언어Supported languages

Durable Functions는 현재 다음 언어를 지원합니다.Durable Functions currently supports the following languages:

  • C# : 미리 컴파일된 클래스 라이브러리C# 스크립트 모두C#: both precompiled class libraries and C# script.
  • F# : 미리 컴파일된 클래스 라이브러리 및 F# 스크립트.F#: precompiled class libraries and F# script. F# 스크립트는 Azure Functions 런타임 버전 1.x에서만 지원됩니다.F# script is only supported for version 1.x of the Azure Functions runtime.
  • JavaScript: Azure Functions 런타임 버전 2.x에서만 지원됩니다.JavaScript: supported only for version 2.x of the Azure Functions runtime. Durable Functions 확장 버전 1.7.0 이상이 필요합니다.Requires version 1.7.0 of the Durable Functions extension, or a later version.

Durable Functions는 모든 Azure Functions 언어를 지원하는 것을 목표로 합니다.Durable Functions has a goal of supporting all Azure Functions languages. 추가 언어를 지원하기 위한 최신 작업 상태는 Durable Functions 문제 목록를 참조하세요.See the Durable Functions issues list for the latest status of work to support additional languages.

Azure Functions와 마찬가지로 Visual Studio 2019, Visual Studio CodeAzure Portal을 사용하여 Durable Functions를 개발하는 데 도움이 되는 템플릿이 있습니다.Like Azure Functions, there are templates to help you develop Durable Functions using Visual Studio 2019, Visual Studio Code, and the Azure portal.

결제Billing

Durable Functions 요금은 Azure Functions와 동일하게 청구됩니다.Durable Functions are billed the same as Azure Functions. 자세한 내용은 Azure Functions 가격 책정을 참조하세요.For more information, see Azure Functions pricing.

지금 바로 시작Jump right in

다음 언어별 빠른 시작 자습서 중 하나를 완료하여 10분 이내에 Durable Functions를 시작할 수 있습니다.You can get started with Durable Functions in under 10 minutes by completing one of these language-specific quickstart tutorials:

두 빠른 시작에서는 “hello world” 지속성 함수를 로컬에서 만들고 테스트합니다.In both quickstarts, you locally create and test a "hello world" durable function. 그런 후 함수 코드를 Azure에 게시합니다.You then publish the function code to Azure. 생성한 함수는 다른 함수에 대한 호출을 오케스트레이션하고 함께 연결합니다.The function you create orchestrates and chains together calls to other functions.

자세한 정보Learn more

다음 비디오는 Durable Functions의 이점을 강조합니다.The following video highlights the benefits of Durable Functions:

Durable Functions는 Azure Functions의 고급 확장이므로 모든 애플리케이션에 적합하지는 않습니다.Because Durable Functions is an advanced extension for Azure Functions, it isn't appropriate for all applications. Durable Functions에 대해 자세히 알아보려면 Durable Functions 패턴 및 기술 개념을 참조하세요.To learn more about Durable Functions, see Durable Functions patterns and technical concepts. 다른 Azure 오케스트레이션 기술과 비교해 보려면 Azure Functions 및 Azure Logic Apps 비교를 참조하세요.For a comparison with other Azure orchestration technologies, see Compare Azure Functions and Azure Logic Apps.

다음 단계Next steps