Azure Functions 런타임 버전 개요Azure Functions runtime versions overview

현재 Azure Functions는 세 가지 버전의 런타임 호스트 (1.x, 2.x 및 3.x)를 지원 합니다.Azure Functions currently supports three versions of the runtime host: 1.x, 2.x, and 3.x. 세 버전 모두 프로덕션 시나리오에서 지원 됩니다.All three versions are supported for production scenarios.

중요

버전 1.x는 유지 관리 모드 이며 Azure Portal 또는 Windows 컴퓨터에서 로컬로 개발을 지원 합니다.Version 1.x is in maintenance mode and only supports development in the Azure portal or locally on Windows computers. 향상 된 기능은 이후 버전 에서만 제공 됩니다.Enhancements are provided only in later versions.

이 문서에서는 다양 한 버전 간의 차이점, 각 버전을 만드는 방법 및 버전을 변경 하는 방법에 대해 자세히 설명 합니다.This article details some of the differences between the various versions, how you can create each version, and how to change versions.

언어Languages

버전 2.x부터 런타임은 언어 확장성 모델을 사용 하 고 함수 앱의 모든 함수는 동일한 언어를 공유 해야 합니다.Starting with version 2.x, the runtime uses a language extensibility model, and all functions in a function app must share the same language. 함수 앱의 함수 언어는 앱을 만들 때 선택 되며, 함수 _ 작업자 _ 런타임 설정에서 유지 관리 됩니다.The language of functions in a function app is chosen when creating the app and is maintained in the FUNCTIONS_WORKER_RUNTIME setting.

다음 표는 각 런타임 버전에서 현재 지원되는 프로그래밍 언어를 나타냅니다.The following table indicates which programming languages are currently supported in each runtime version.

언어Language 1.x1.x 2.x2.x 3.x3.x
C#C# GA(.NET Framework 4.7)GA (.NET Framework 4.7) GA (.NET Core 2.2)GA (.NET Core 2.2) GA (.NET Core 3.1)GA (.NET Core 3.1)
JavaScriptJavaScript GA(Node 6)GA (Node 6) GA(Node 8 & 10)GA (Node 8 & 10) GA (Node 10 & 12)GA (Node 10 & 12)
F#F# GA(.NET Framework 4.7)GA (.NET Framework 4.7) GA (.NET Core 2.2)GA (.NET Core 2.2) GA (.NET Core 3.1)GA (.NET Core 3.1)
JavaJava 해당 없음N/A GA (Java 8)GA (Java 8) GA (Java 8)GA (Java 8)
PowerShellPowerShell 해당 없음N/A GA (PowerShell Core 6)GA (PowerShell Core 6) GA (PowerShell Core 6)GA (PowerShell Core 6)
PythonPython 해당 없음N/A GA (Python 3.6 & 3.7)GA (Python 3.6 & 3.7) GA (Python 3.6, 3.7, & 3.8)GA (Python 3.6, 3.7, & 3.8)
TypeScriptTypeScript 해당 없음N/A GA1GA1 GA1GA1

1 JavaScript로 트랜스 파일 하려면을 통해 지원 됩니다.1Supported through transpiling to JavaScript.

언어 지원 변경 계획에 대한 정보는 Azure 로드맵을 참조하세요.For information about planned changes to language support, see Azure roadmap.

자세한 내용은 지원되는 언어를 참조하세요.For more information, see Supported languages.

특정 버전에서 실행Run on a specific version

기본적으로 Azure Portal 및 Azure CLI에서 만든 함수 앱은 버전 3.x로 설정 됩니다.By default, function apps created in the Azure portal and by the Azure CLI are set to version 3.x. 이 버전은 필요에 따라 수정할 수 있습니다.You can modify this version as needed. 함수 앱을 만든 후 함수를 추가 하기 전에는 런타임 버전을 1.x로만 변경할 수 있습니다.You can only change the runtime version to 1.x after you create your function app but before you add any functions. 기능이 있는 응용 프로그램 에서도 2.x와 2.x 간 이동이 허용 되지만 먼저 새 앱에서 테스트 하는 것이 좋습니다.Moving between 2.x and 3.x is allowed even with apps that have functions, but it is still recommended to test in a new app first.

1.x에서 이후 버전으로 마이그레이션Migrating from 1.x to later versions

버전 1.x 런타임을 사용 하도록 작성 된 기존 앱을 마이그레이션하려면 최신 버전을 대신 사용 하도록 선택할 수 있습니다.You may choose to migrate an existing app written to use the version 1.x runtime to instead use a newer version. 변경 해야 하는 대부분의 변경 사항은 .NET Framework 4.7 및 .NET Core 간의 c # API 변경과 같은 언어 런타임의 변경 내용과 관련이 있습니다.Most of the changes you need to make are related to changes in the language runtime, such as C# API changes between .NET Framework 4.7 and .NET Core. 또한 선택한 언어 런타임과 코드 및 라이브러리가 호환되는지 확인해야 합니다.You'll also need to make sure your code and libraries are compatible with the language runtime you choose. 마지막으로 아래에 강조 표시된 트리거, 바인딩 및 기능의 변경 내용을 기록해 두어야 합니다.Finally, be sure to note any changes in trigger, bindings, and features highlighted below. 최상의 마이그레이션 결과를 위해 새 버전으로 새 함수 앱을 만들고 기존 버전 1.x 함수 코드를 새 앱으로 이식 해야 합니다.For the best migration results, you should create a new function app in a new version and port your existing version 1.x function code to the new app.

앱 구성을 수동으로 업데이트 하 여 "내부" 업그레이드를 수행할 수 있지만, 1.x에서 상위 버전으로 이동 하는 데는 몇 가지 주요 변경 사항이 포함 되어 있습니다.While it's possible to do an "in-place" upgrade by manually updating the app configuration, going from 1.x to a higher version includes some breaking changes. 예를 들어 c #에서 디버깅 개체는에서로 변경 TraceWriter 됩니다 ILogger .For example, in C#, the debugging object is changed from TraceWriter to ILogger. 새 버전 2.x 프로젝트를 만들어 최신 버전의 3(sp3) 템플릿을 기반으로 업데이트 된 함수로 시작 합니다.By creating a new version 3.x project, you start off with updated functions based on the latest version 3.x templates.

버전 1.x 이후의 트리거와 바인딩 변경Changes in triggers and bindings after version 1.x

2.x 버전부터 앱의 함수에 사용 되는 특정 트리거 및 바인딩에 대 한 확장을 설치 해야 합니다.Starting with version 2.x, you must install the extensions for specific triggers and bindings used by the functions in your app. 유일한 예외는 확장이 필요 없는 이 HTTP 및 타이머 트리거입니다.The only exception for this HTTP and timer triggers, which don't require an extension. 자세한 내용은 바인딩 확장 등록 및 설치를 참조하세요.For more information, see Register and install binding extensions.

또한 버전 간에 함수의function.js또는 특성에 한 몇 가지 변경 내용이 있습니다.There are also a few changes in the function.json or attributes of the function between versions. 예를 들어, 이벤트 허브 path 속성은 이제 eventHubName입니다.For example, the Event Hub path property is now eventHubName. 각 바인딩의 설명서에 대한 링크는 기존 바인딩 테이블을 참조하세요.See the existing binding table for links to documentation for each binding.

버전 1.x 이후의 기능 변경 내용Changes in features and functionality after version 1.x

버전 1.x 이후에 제거, 업데이트 또는 교체 된 몇 가지 기능이 있습니다.A few features were removed, updated, or replaced after version 1.x. 이 섹션에서는 버전 1.x를 사용한 후 이후 버전에 표시 되는 변경 내용에 대해 자세히 설명 합니다.This section details the changes you see in later versions after having used version 1.x.

버전 2.x에서 다음과 같은 사항이 변경되었습니다.In version 2.x, the following changes were made:

  • HTTP 엔드포인트를 호출하기 위한 키는 항상 Azure Blob Storage에 암호화된 상태로 저장됩니다.Keys for calling HTTP endpoints are always stored encrypted in Azure Blob storage. 버전 1.x에서는 키가 기본적으로 Azure File storage에 저장 되었습니다.In version 1.x, keys were stored in Azure File storage by default. 앱을 버전 1.x에서 버전 2.x로 업그레이드할 때 파일 스토리지에 있는 기존 암호가 다시 설정됩니다.When upgrading an app from version 1.x to version 2.x, existing secrets that are in file storage are reset.

  • 버전 2.x 런타임에서는 웹후크 공급자가 기본적으로 지원되지 않습니다.The version 2.x runtime doesn't include built-in support for webhook providers. 성능 향상을 위해 이렇게 변경되었습니다.This change was made to improve performance. HTTP 트리거를 여전히 웹후크에 대한 엔드포인트로 사용할 수 있습니다.You can still use HTTP triggers as endpoints for webhooks.

  • 호스트 구성 파일(host.json)은 비워 두거나 문자열 "version": "2.0"을 포함해야 합니다.The host configuration file (host.json) should be empty or have the string "version": "2.0".

  • 모니터링을 개선 하기 위해이 설정을 사용 하는 포털의 WebJobs 대시보드는 AzureWebJobsDashboard 설정을 사용 하는 Azure 애플리케이션 Insights로 바뀝니다 APPINSIGHTS_INSTRUMENTATIONKEY .To improve monitoring, the WebJobs dashboard in the portal, which used the AzureWebJobsDashboard setting is replaced with Azure Application Insights, which uses the APPINSIGHTS_INSTRUMENTATIONKEY setting. 자세한 내용은 Azure Functions 모니터링을 참조하세요.For more information, see Monitor Azure Functions.

  • 함수 앱의 모든 함수가 동일한 언어를 공유해야 합니다.All functions in a function app must share the same language. 함수 앱을 만들 때 앱의 런타임 스택을 선택해야 합니다.When you create a function app, you must choose a runtime stack for the app. 런타임 스택은 FUNCTIONS_WORKER_RUNTIME 응용 프로그램 설정의 값으로 지정 됩니다.The runtime stack is specified by the FUNCTIONS_WORKER_RUNTIME value in application settings. 이 요구 사항은 공간 효율성 및 시작 시간을 개선하기 위해 추가되었습니다.This requirement was added to improve footprint and startup time. 로컬로 개발하는 경우 local.settings.json 파일에 이 설정을 포함해야 합니다.When developing locally, you must also include this setting in the local.settings.json file.

  • App Service 계획의 함수에 대한 기본 시간 제한은 30분으로 변경되었습니다.The default timeout for functions in an App Service plan is changed to 30 minutes. host.json에서 functionTimeout 설정을 사용하여 수동으로 제한 시간을 다시 무제한으로 변경할 수 있습니다.You can manually change the timeout back to unlimited by using the functionTimeout setting in host.json.

  • HTTP concurrency 제한는 기본적으로 소비 계획 함수에 대해 구현 되며 인스턴스당 기본값 100을 사용 합니다.HTTP concurrency throttles are implemented by default for Consumption plan functions, with a default of 100 concurrent requests per instance. maxConcurrentRequests파일의 host.js에 있는 설정에서이를 변경할 수 있습니다.You can change this in the maxConcurrentRequests setting in the host.json file.

  • .Net Core 제한 사항때문에 F # 스크립트 (. .fsx) 함수에 대 한 지원이 제거 되었습니다.Because of .NET Core limitations, support for F# script (.fsx) functions has been removed. 컴파일된 F# 함수(.fs)는 계속 지원됩니다.Compiled F# functions (.fs) are still supported.

  • Event Grid 트리거 웹후크의 URL 형식은 https://{app}/runtime/webhooks/{triggerName}으로 변경되었습니다.The URL format of Event Grid trigger webhooks has been changed to https://{app}/runtime/webhooks/{triggerName}.

2.x에서 2.x로 마이그레이션Migrating from 2.x to 3.x

Azure Functions 버전 3(sp3)은 이전 버전과 호환 됩니다. x. x.Azure Functions version 3.x is highly backwards compatible to version 2.x. 많은 앱은 코드를 변경 하지 않고 2.x로 안전 하 게 업그레이드할 수 있어야 합니다.Many apps should be able to safely upgrade to 3.x without any code changes. 3. x로 이동 하는 것이 좋습니다. 프로덕션 앱에서 주 버전을 변경 하기 전에 광범위 한 테스트를 실행 해야 합니다.While moving to 3.x is encouraged, be sure to run extensive tests before changing the major version in production apps.

2.x와 3(sp3)의 주요 변경 내용Breaking changes between 2.x and 3.x

2.x 앱을 3. x로 업그레이드 하기 전에 알아두어야 할 변경 사항은 다음과 같습니다.The following are the changes to be aware of before upgrading a 2.x app to 3.x.

JavaScriptJavaScript

  • 또는 반환 값을 통해 할당 된 출력 바인딩은 context.done 이제의 설정과 동일 하 게 동작 합니다 context.bindings .Output bindings assigned through context.done or return values now behave the same as setting in context.bindings.

  • 타이머 트리거 개체는 camelCase입니다.Timer trigger object is camelCase instead of PascalCase

  • 이벤트 허브가 이진으로 트리거된 함수 dataType 는 대신의 배열을 받습니다 binary string .Event Hub triggered functions with dataType binary will receive an array of binary instead of string.

  • HTTP 요청 페이로드에는를 통해 더 이상 액세스할 수 없습니다 context.bindingData.req .The HTTP request payload can no longer be accessed via context.bindingData.req. 여전히에서 입력 매개 변수, 및로 액세스할 수 있습니다 context.req context.bindings .It can still be accessed as an input parameter, context.req, and in context.bindings.

  • Node.js 8은 더 이상 지원 되지 않으며, 3. x 함수에서 실행 되지 않습니다.Node.js 8 is no longer supported and will not execute in 3.x functions.

.NET.NET

Azure에서 앱 버전 변경Changing version of apps in Azure

Azure에서 게시 된 앱이 사용 하는 함수 런타임의 버전은 응용 프로그램 설정에 따라 결정 됩니다 FUNCTIONS_EXTENSION_VERSION .The version of the Functions runtime used by published apps in Azure is dictated by the FUNCTIONS_EXTENSION_VERSION application setting. 지원 되는 주요 런타임 버전 값은 다음과 같습니다.The following major runtime version values are supported:

Value 런타임 대상Runtime target
~3 3.x3.x
~2 2.x2.x
~1 1.x1.x

중요

다른 앱 설정을 변경 하 고 함수 코드를 변경 해야 할 수 있으므로이 설정을 임의로 변경 하지 마십시오.Don't arbitrarily change this setting, because other app setting changes and changes to your function code may be required.

로컬에서 개발한 응용 프로그램 버전Locally developed application versions

대상 버전을 로컬에서 변경 하도록 함수 앱을 다음과 같이 업데이트할 수 있습니다.You can make the following updates to function apps to locally change the targeted versions.

Visual Studio 런타임 버전Visual Studio runtime versions

Visual Studio에서 프로젝트를 만들 때 런타임 버전을 선택합니다.In Visual Studio, you select the runtime version when you create a project. Visual Studio 용 Azure Functions 도구는 세 가지 주요 런타임 버전을 지원 합니다.Azure Functions tools for Visual Studio supports the three major runtime versions. 디버깅 및 게시를 수행할 때 프로젝트 설정에 따라 올바른 버전이 사용됩니다.The correct version is used when debugging and publishing based on project settings. 버전 설정은 .csproj 파일의 다음 속성에 정의됩니다.The version settings are defined in the .csproj file in the following properties:

버전 1.xVersion 1.x
<TargetFramework>net461</TargetFramework>
<AzureFunctionsVersion>v1</AzureFunctionsVersion>
버전 2.xVersion 2.x
<TargetFramework>netcoreapp2.1</TargetFramework>
<AzureFunctionsVersion>v2</AzureFunctionsVersion>
버전 3.xVersion 3.x
<TargetFramework>netcoreapp3.1</TargetFramework>
<AzureFunctionsVersion>v3</AzureFunctionsVersion>

참고

Azure Functions 3.x 및 .NET을 사용 하려면 Microsoft.NET.Sdk.Functions 확장이 이상 이어야 합니다 3.0.0 .Azure Functions 3.x and .NET requires the Microsoft.NET.Sdk.Functions extension be at least 3.0.0.

Visual Studio에서 2.x 앱을 3. x로 업데이트Updating 2.x apps to 3.x in Visual Studio

2.x를 대상으로 하는 기존 함수를 열고, 파일을 편집 .csproj 하 고 위의 값을 업데이트 하 여 2.x로 이동할 수 있습니다.You can open an existing function targeting 2.x and move to 3.x by editing the .csproj file and updating the values above. Visual Studio는 프로젝트 메타 데이터를 기반으로 런타임 버전을 자동으로 관리 합니다.Visual Studio manages runtime versions automatically for you based on project metadata. 그러나이 경우에는 Visual Studio가 컴퓨터에 3gb 용 템플릿과 런타임을 아직 보유 하지 않은 경우에만 3. x 앱을 만들 수 있습니다.However, it's possible if you have never created a 3.x app before that Visual Studio doesn't yet have the templates and runtime for 3.x on your machine. "프로젝트에 지정 된 버전과 일치 하는 사용할 수 있는 함수 런타임이 없습니다."와 같은 오류가 표시 될 수 있습니다.This may present itself with an error like "no Functions runtime available that matches the version specified in the project." 최신 템플릿 및 런타임을 인출 하려면 새 함수 프로젝트를 만드는 환경을 살펴보겠습니다.To fetch the latest templates and runtime, go through the experience to create a new function project. 버전 및 템플릿 선택 화면에서 Visual Studio가 최신 템플릿 가져오기를 완료할 때까지 기다립니다.When you get to the version and template select screen, wait for Visual Studio to complete fetching the latest templates. 최신 .NET Core 3 템플릿을 사용할 수 있고 표시 되 면 버전 3.x에 대해 구성 된 모든 프로젝트를 실행 하 고 디버그할 수 있어야 합니다.Once the latest .NET Core 3 templates are available and displayed you should be able to run and debug any project configured for version 3.x.

중요

버전 3.x 함수는 visual studio 버전 16.4 이상을 사용 하는 경우에만 Visual Studio에서 개발할 수 있습니다.Version 3.x functions can only be developed in Visual Studio if using Visual Studio version 16.4 or newer.

VS Code 및 Azure Functions 핵심 도구VS Code and Azure Functions Core Tools

Azure Functions Core Tools는 명령줄 개발에 사용되며 Visual Studio Code용 Azure Functions 확장에서도 사용됩니다.Azure Functions Core Tools is used for command line development and also by the Azure Functions extension for Visual Studio Code. 버전 3.x에 대해 개발 하려면 핵심 도구의 버전 3(sp3)을 설치 합니다.To develop against version 3.x, install version 3.x of the Core Tools. 버전 2.x를 개발 하려면 2. x 버전의 핵심 도구가 필요 합니다.Version 2.x development requires version 2.x of the Core Tools, and so on. 자세한 내용은 Azure Functions Core Tools 설치를 참조하세요.For more information, see Install the Azure Functions Core Tools.

Visual Studio Code 개발의 경우 설치된 도구의 버전과 일치하도록 azureFunctions.projectRuntime에 대한 사용자 설정을 업데이트해야 할 수도 있습니다.For Visual Studio Code development, you may also need to update the user setting for the azureFunctions.projectRuntime to match the version of the tools installed. 이 설정은 함수 앱을 만드는 동안 사용되는 템플릿 및 언어도 업데이트합니다.This setting also updates the templates and languages used during function app creation. 에서 앱을 만들려면 ~3 azureFunctions.projectRuntime 사용자 설정을로 업데이트 ~3 합니다.To create apps in ~3 you would update the azureFunctions.projectRuntime user setting to ~3.

Azure Functions 확장 런타임 설정

Maven 및 Java 앱Maven and Java apps

로컬로 실행 하는 데 필요한 핵심 도구의 3. x 버전을 설치 하 여 Java 앱을 버전 2.x에서 2.x로 마이그레이션할 수 있습니다.You can migrate Java apps from version 2.x to 3.x by installing the 3.x version of the core tools required to run locally. 앱이 버전 3.x에서 로컬로 실행 되 고 있는지 확인 한 후 POM.xml FUNCTIONS_EXTENSION_VERSION ~3 다음 예제와 같이 앱의 파일을 업데이트 하 여 설정을로 수정 합니다.After verifying that your app works correctly running locally on version 3.x, update the app's POM.xml file to modify the FUNCTIONS_EXTENSION_VERSION setting to ~3, as in the following example:

<configuration>
    <resourceGroup>${functionResourceGroup}</resourceGroup>
    <appName>${functionAppName}</appName>
    <region>${functionAppRegion}</region>
    <appSettings>
        <property>
            <name>WEBSITE_RUN_FROM_PACKAGE</name>
            <value>1</value>
        </property>
        <property>
            <name>FUNCTIONS_EXTENSION_VERSION</name>
            <value>~3</value>
        </property>
    </appSettings>
</configuration>

바인딩Bindings

버전 2.x부터 런타임은 다음과 같은 이점을 제공 하는 새로운 바인딩 확장성 모델 을 사용 합니다.Starting with version 2.x, the runtime uses a new binding extensibility model that offers these advantages:

  • 타사 바인딩 확장 지원.Support for third-party binding extensions.

  • 런타임과 바인딩을 분리.Decoupling of runtime and bindings. 이렇게 변경하면 바인딩 확장의 버전을 지정하고 독립적으로 릴리스할 수 있습니다.This change allows binding extensions to be versioned and released independently. 예를 들어 기본 SDK의 최신 버전을 사용하는 확장 버전으로 업그레이드하도록 선택할 수 있습니다.You can, for example, opt to upgrade to a version of an extension that relies on a newer version of an underlying SDK.

  • 사용 중인 바인딩만 런타임에 알려지고 로드되는 가벼운 실행 환경.A lighter execution environment, where only the bindings in use are known and loaded by the runtime.

HTTP 및 타이머 트리거를 제외하고 모든 바인딩은 명시적으로 함수 앱 프로젝트에 추가하거나 포털에 등록해야 합니다.With the exception of HTTP and timer triggers, all bindings must be explicitly added to the function app project, or registered in the portal. 자세한 내용은 바인딩 확장 등록을 참조하세요.For more information, see Register binding extensions.

다음 표에는 각 런타임 버전에서 지원되는 바인딩이 나와 있습니다.The following table shows which bindings are supported in each runtime version.

다음 표에서는 Azure Functions 런타임의 주 버전에서 지원 되는 바인딩을 보여 줍니다.This table shows the bindings that are supported in the major versions of the Azure Functions runtime:

TypeType 1.x1.x 2.x 이상12.x and higher1 트리거Trigger 입력Input 출력Output
Blob StorageBlob storage
Cosmos DBCosmos DB
Event GridEvent Grid
Event HubsEvent Hubs
HTTP & 웹 후크HTTP & webhooks
IoT HubIoT Hub
Microsoft Graph
Excel 테이블
Microsoft Graph
Excel tables
Microsoft Graph
OneDrive 파일
Microsoft Graph
OneDrive files
Microsoft Graph
Outlook 이메일
Microsoft Graph
Outlook email
Microsoft Graph
이벤트
Microsoft Graph
events
Microsoft Graph
인증 토큰
Microsoft Graph
Auth tokens
Mobile AppsMobile Apps
Notification HubsNotification Hubs
Queue StorageQueue storage
SendGridSendGrid
Service BusService Bus
SignalRSignalR
Table StorageTable storage
타이머Timer
TwilioTwilio

1 버전 2.X 런타임으로 시작 하 여 HTTP 및 타이머를 제외한 모든 바인딩을 등록 해야 합니다.1 Starting with the version 2.x runtime, all bindings except HTTP and Timer must be registered. 바인딩 확장 등록을 참조하세요.See Register binding extensions.

함수 앱 시간 제한 기간Function app timeout duration

함수 앱의 제한 시간은 functionTimeout 프로젝트 파일 의host.js 에 있는 속성에 의해 정의 됩니다.The timeout duration of a function app is defined by the functionTimeout property in the host.json project file. 다음 표에서는 계획 및 다양 한 런타임 버전에 대 한 기본 및 최대 값 (분)을 보여 줍니다.The following table shows the default and maximum values in minutes for both plans and the different runtime versions:

계획Plan 런타임 버전Runtime Version 기본값Default 최대Maximum
ConsumptionConsumption 1.x1.x 55 1010
ConsumptionConsumption 2.x2.x 55 1010
ConsumptionConsumption 3.x3.x 55 1010
PremiumPremium 1.x1.x 3030 제한 없음Unlimited
PremiumPremium 2.x2.x 3030 제한 없음Unlimited
PremiumPremium 3.x3.x 3030 제한 없음Unlimited
App ServiceApp Service 1.x1.x 제한 없음Unlimited 제한 없음Unlimited
App ServiceApp Service 2.x2.x 3030 제한 없음Unlimited
App ServiceApp Service 3.x3.x 3030 제한 없음Unlimited

참고

함수 앱 제한 시간 설정에 관계 없이, 230 초는 HTTP 트리거된 함수가 요청에 응답 하는 데 사용할 수 있는 최대 시간입니다.Regardless of the function app timeout setting, 230 seconds is the maximum amount of time that an HTTP triggered function can take to respond to a request. 이는 Azure Load Balancer의 기본 유휴 시간 제한으로 인해 발생 합니다.This is because of the default idle timeout of Azure Load Balancer. 처리 시간이 길면 비동기 Durable Functions 패턴 을 사용 하거나 실제 작업을 지연 시키고 즉각적인 응답을 반환하는 것이 좋습니다.For longer processing times, consider using the Durable Functions async pattern or defer the actual work and return an immediate response.

다음 단계Next steps

자세한 내용은 다음 자료를 참조하세요.For more information, see the following resources: