Skip to content

Commit 7f90d97

Browse files
committed
copyedit check by copilot, add df overview landing page
Signed-off-by: Hannah Hunter <[email protected]>
1 parent 7f8c800 commit 7f90d97

24 files changed

Lines changed: 170 additions & 102 deletions

articles/azure-functions/durable/TOC.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
items:
66
- name: What is Durable Task?
77
href: what-is-durable-task.md
8-
- name: Choose your programming model
8+
- name: Choose your hosting option
99
href: choose-orchestration-framework.md
1010
- name: Quickstarts
1111
items:
@@ -87,6 +87,8 @@
8787
items:
8888
- name: Overview
8989
items:
90+
- name: About Durable Functions
91+
href: durable-functions-overview.md
9092
- name: About Azure Functions
9193
href: ../functions-overview.md?toc=/azure/azure-functions/durable/toc.json
9294
- name: Versions
@@ -227,7 +229,7 @@
227229
href: https://azure.microsoft.com/updates/?product=functions&updatetype=&platform=
228230
- name: Durable Task SDKs
229231
items:
230-
- name: Overview
232+
- name: About the Durable Task SDKs
231233
href: ./durable-task-scheduler/durable-task-overview.md
232234
- name: Tutorials
233235
items:

articles/azure-functions/durable/choose-orchestration-framework.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Choose your programming model
2+
title: Choose your hosting option
33
description: Learn how your hosting platform determines whether to use Durable Functions for Azure Functions or the standalone Durable Task SDKs for self-hosted scenarios.
44
author: cgillum
55
ms.author: cgillum
@@ -12,7 +12,7 @@ titleSuffix: Durable Task
1212
#Customer intent: As a developer, I want to understand which Durable Task programming model to use based on my hosting platform.
1313
---
1414

15-
# Choose your programming model
15+
# Choose your hosting option
1616

1717
As described in [What is Durable Task?](what-is-durable-task.md), the Durable Task framework supports two hosting models: **Azure Functions** (via Durable Functions) and **self-hosted** (via the standalone Durable Task SDKs). Both hosting models provide the same core durable execution capabilities (orchestrations, activities, timers, external events, and more) but differ in how your application is hosted, scaled, and deployed.
1818

@@ -60,7 +60,7 @@ Azure Functions provides HTTP endpoints for your functions app, which the Durabl
6060
When using the Durable Task SDKs, you need to implement your own HTTP endpoints depending on your hosting compute.
6161

6262
| Feature | Durable Functions | Durable Task SDKs |
63-
|---------|-------------------|-------------------|
63+
| ------- | ----------------- | ----------------- |
6464
| **Management HTTP APIs** | ✅ Built-in | ❌ Implement your own |
6565
| **Automatic status URLs** | ✅ Built-in | ❌ Implement your own |
6666

@@ -84,10 +84,10 @@ Learn more: [Manage orchestration instances](durable-functions-instance-manageme
8484
Durable Functions supports multiple storage backends, while the Durable Task SDKs exclusively use the Durable Task Scheduler.
8585

8686
> [!TIP]
87-
> The **Durable Task Scheduler** is a fully managed Azure service that handles orchestration state persistence and execution. It's provisioned as a separate Azure resource with its own [pricing](./durable-task-scheduler/durable-task-scheduler-dedicated-sku.md). It's the recommended backend for Durable Functions and the only supported backend for the Durable Task SDKs.
87+
> The **Durable Task Scheduler** is a fully managed Azure service that handles orchestration state persistence and execution. It's provisioned as a separate Azure resource with its own [pricing](./durable-task-scheduler/durable-task-scheduler-billing.md). It's the recommended backend for Durable Functions and the only supported backend for the Durable Task SDKs.
8888
8989
| Storage provider | Durable Functions | Durable Task SDKs |
90-
|------------------|-------------------|-------------------|
90+
| ---------------- | ----------------- | ----------------- |
9191
| **Durable Task Scheduler** | ✅ Recommended | ✅ Required |
9292
| **Azure Storage** | ✅ Supported | ❌ Not supported |
9393
| **Microsoft SQL Server** | ✅ Supported | ❌ Not supported |
@@ -104,7 +104,7 @@ Learn more: [Task hubs](durable-functions-task-hubs.md)
104104
### Diagnostics and versioning
105105

106106
| Feature | Durable Functions | Durable Task SDKs |
107-
|---------|-------------------|-------------------|
107+
| ------- | ----------------- | ----------------- |
108108
| **Durable Task Scheduler dashboard** | ✅ Yes | ✅ Yes |
109109
| **Application Insights** | ✅ Built-in | Manual setup |
110110
| **Zero-downtime deployment** | ✅ Functions slots | Platform-specific |
@@ -139,7 +139,7 @@ All Durable Task SDKs are open source and available on GitHub. However, some SDK
139139

140140
### Durable Task Framework (Legacy)
141141

142-
The [Durable Task Framework](https://github.com/Azure/durabletask) (DTFx) is an older, open-source .NET Durable Task library. While it provides similar orchestration primitives, it predates the modern Durable Task SDKs and doesn't include official Microsoft support or the latest features. It also requires you to manage hosting, operational infrastructure, and long-term maintenance themselves.
142+
The [Durable Task Framework](https://github.com/Azure/durabletask) (DTFx) is an older, open-source .NET Durable Task library. While it provides similar orchestration primitives, it predates the modern Durable Task SDKs and doesn't include official Microsoft support or the latest features. It also requires you to manage hosting, operational infrastructure, and long-term maintenance yourself.
143143

144144
If you're starting a new project, we recommend using the modern Durable Task SDKs or Durable Functions instead.
145145

articles/azure-functions/durable/durable-functions-azure-storage-provider.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ Storing payloads to local disks is *not* recommended, since on-disk state isn't
165165

166166
## Configuring the Azure storage provider
167167

168-
The Azure Storage provider is the default storage provider and doesn't require any explicit configuration, NuGet package references, or extension bundle references. You can find the full set of **host.json** configuration options [here](durable-functions-bindings.md#durable-functions-settings-in-hostjson), under the `extensions/durableTask/storageProvider` path.
168+
The Azure Storage provider is the default storage provider and doesn't require any explicit configuration, NuGet package references, or extension bundle references. You can find the full set of [Durable Functions host.json configuration options](durable-functions-bindings.md#durable-functions-settings-in-hostjson) under the `extensions/durableTask/storageProvider` path.
169169

170170
### Connections
171171

@@ -178,15 +178,16 @@ If the configured value is both an exact match for a single setting and a prefix
178178

179179
### Identity-based connections
180180

181-
If you are using [version 2.7.0 or higher of the extension](https://github.com/Azure/azure-functions-durable-extension/releases/tag/v2.7.0) and the Azure storage provider, instead of using a connection string with a secret, you can have the app use an [Microsoft Entra identity](../../active-directory/fundamentals/active-directory-whatis.md). To do this, you would define settings under a common prefix which maps to the `connectionName` property in the trigger and binding configuration.
181+
If you are using [version 2.7.0 or higher of the extension](https://github.com/Azure/azure-functions-durable-extension/releases/tag/v2.7.0) and the Azure storage provider, instead of using a connection string with a secret, you can have the app use an [Microsoft Entra identity](/entra/fundamentals/what-is-entra). To do this, you would define settings under a common prefix which maps to the `connectionName` property in the trigger and binding configuration.
182182

183183
To use an identity-based connection for Durable Functions, configure the following app settings:
184184

185-
|Property | Environment variable template | Description | Example value |
186-
|-|-----------------------------------------------------|--------------------------------------------|------------------------------------------------|
187-
| Blob service URI | `<CONNECTION_NAME_PREFIX>__blobServiceUri`| The data plane URI of the blob service of the storage account, using the HTTPS scheme. | https://<storage_account_name>.blob.core.windows.net |
188-
| Queue service URI | `<CONNECTION_NAME_PREFIX>__queueServiceUri` | The data plane URI of the queue service of the storage account, using the HTTPS scheme. | https://<storage_account_name>.queue.core.windows.net |
189-
| Table service URI | `<CONNECTION_NAME_PREFIX>__tableServiceUri` | The data plane URI of a table service of the storage account, using the HTTPS scheme. | https://<storage_account_name>.table.core.windows.net |
185+
| Property | Environment variable template | Description | Example value |
186+
| -------- | ----------------------------- | ----------- | ------------- |
187+
| Blob service URI | `<CONNECTION_NAME_PREFIX>__blobServiceUri` | The data plane URI of the blob service of the storage account, using the HTTPS scheme. | `https://<storage_account_name>.blob.core.windows.net` |
188+
| Queue service URI | `<CONNECTION_NAME_PREFIX>__queueServiceUri` | The data plane URI of the queue service of the storage account, using the HTTPS scheme. | `https://<storage_account_name>.queue.core.windows.net` |
189+
| Table service URI | `<CONNECTION_NAME_PREFIX>__tableServiceUri` | The data plane URI of a table service of the storage account, using the HTTPS scheme. | `https://<storage_account_name>.table.core.windows.net` |
190+
<!-- markdownlint-enable MD044 -->
190191

191192
Additional properties may be set to customize the connection. See [Common properties for identity-based connections](../functions-reference.md#common-properties-for-identity-based-connections).
192193

@@ -373,7 +374,7 @@ The following table shows the [expected *maximum* throughput numbers for the sce
373374
| External event processing | 50 events per second, per instance |
374375
| Entity operation processing | 64 operations per second |
375376

376-
If you aren't seeing the throughput numbers you expect and your CPU and memory usage appears healthy, check whether the cause is related to [the health of your storage account](../../storage/common/storage-monitoring-diagnosing-troubleshooting.md#troubleshooting-guidance). The Durable Functions extension can put significant load on an Azure Storage account, and sufficiently high loads may result in storage account throttling.
377+
If you aren't seeing the throughput numbers you expect and your CPU and memory usage appears healthy, check whether the cause is related to [the health of your storage account](/troubleshoot/azure/azure-storage/blobs/alerts/storage-monitoring-diagnosing-troubleshooting#troubleshooting-guidance). The Durable Functions extension can put significant load on an Azure Storage account, and sufficiently high loads may result in storage account throttling.
377378

378379
> [!TIP]
379380
> In some cases, you can increase the throughput of external events, activity fan-in, and entity operations by increasing the value of the `controlQueueBufferThreshold` setting in your `host.json`. Increasing this value beyond its default causes the Durable Task Framework storage provider to use more memory to prefetch these events more aggressively, reducing delays associated with dequeueing messages from the Azure Storage control queues. For more information, see the [host.json](durable-functions-bindings.md#host-json) reference documentation.

articles/azure-functions/durable/durable-functions-configure-managed-identity.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.author: azfuncdf
99

1010
# Quickstart: Configure Durable Functions with managed identity
1111

12-
A managed identity from the access management service [Microsoft Entra ID](../../active-directory/fundamentals/active-directory-whatis.md) allows your app to access other Microsoft Entra protected resources, such as an Azure Storage account, without handling secrets manually. The identity is managed by the Azure platform, so you do *not* need to provision or rotate any secrets. The recommended way to authenticate access to Azure resources is through using such an identity.
12+
A managed identity from the access management service [Microsoft Entra ID](/entra/fundamentals/what-is-entra) allows your app to access other Microsoft Entra protected resources, such as an Azure Storage account, without handling secrets manually. The identity is managed by the Azure platform, so you do *not* need to provision or rotate any secrets. The recommended way to authenticate access to Azure resources is through using such an identity.
1313

1414
In this quickstart, you complete steps to configure a Durable Functions app using the default **Azure Storage provider** to use identity-based connections for storage account access.
1515

@@ -27,7 +27,7 @@ To complete this quickstart, you need:
2727

2828
If you don't have an existing Durable Functions project deployed in Azure, we recommend that you start with one of the following quickstarts:
2929

30-
- [Create your first durable function - C#](durable-functions-create-first-csharp.md)
30+
- [Create your first durable function - C#](durable-functions-isolated-create-first-csharp.md)
3131
- [Create your first durable function - JavaScript](quickstart-js-vscode.md)
3232
- [Create your first durable function - Python](quickstart-python-vscode.md)
3333
- [Create your first durable function - PowerShell](quickstart-powershell-vscode.md)
@@ -69,7 +69,7 @@ If none of these options are successful, an error stating that the app cannot re
6969

7070
Assign the roles to yourself by clicking **"+ Select members"** and finding your email in the pop-up window. (This email is the one you use to log into Microsoft applications, Azure CLI, or editors in the Visual Studio family.)
7171

72-
![Screenshot showing access assignment to user.](./media/durable-functions-configure-df-with-credentials/assign-access-user.png)
72+
:::image type="content" source="./media/durable-functions-configure-df-with-credentials/assign-access-user.png" alt-text="Screenshot showing access assignment to user.":::
7373

7474
## Identity-based connections for app deployed to Azure
7575

@@ -87,7 +87,7 @@ Navigate to your app's Azure Storage resource on the Azure portal and [assign](/
8787

8888
To find your identity resource, select assign access to **Managed identity** and then **+ Select members**
8989

90-
![Screenshot showing access assignment to managed identity.](./media/durable-functions-configure-df-with-credentials/assign-access-managed-identity.png)
90+
:::image type="content" source="./media/durable-functions-configure-df-with-credentials/assign-access-managed-identity.png" alt-text="Screenshot showing access assignment to managed identity.":::
9191

9292
### Add managed identity configuration to your app
9393

@@ -96,7 +96,7 @@ Before you can use your app's managed identity, make some changes to the app set
9696
1. In the Azure portal, on your function app resource menu under **Settings**, select **Environment variables**.
9797

9898
1. In the list of settings, find **AzureWebJobsStorage** and select the **Delete** icon.
99-
[ ![Screenshot of default storage setting.](./media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-01.png)](./media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-01.png#lightbox)
99+
:::image type="content" source="./media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-01.png" alt-text="Screenshot of default storage setting." lightbox="./media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-01.png":::
100100

101101
1. Add a setting to link your Azure storage account to the application.
102102

@@ -120,7 +120,7 @@ Before you can use your app's managed identity, make some changes to the app set
120120

121121
You can get the values for these URI variables in the storage account information from the **Endpoints** tab.
122122

123-
![Screenshot of endpoint sample.](media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-02.png)
123+
:::image type="content" source="media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-02.png" alt-text="Screenshot of endpoint sample.":::
124124

125125
> [!NOTE]
126126
> If you are using [Azure Government](../../azure-government/documentation-government-welcome.md) or any other cloud that's separate from global Azure, you must use the option that provides specific service URIs instead of just the storage account name. For more information on using Azure Storage with Azure Government, see the [Develop by using the Storage API in Azure Government](../../azure-government/documentation-government-get-started-connect-to-storage.md).
@@ -135,7 +135,7 @@ Before you can use your app's managed identity, make some changes to the app set
135135

136136
* **AzureWebJobsStorage__clientId**, get this GUID value from your managed identity resource
137137

138-
![Screenshot of user identity client ID.](media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-03.png)
138+
:::image type="content" source="media/durable-functions-configure-df-with-credentials/durable-functions-managed-identity-scenario-03.png" alt-text="Screenshot of user identity client ID.":::
139139

140140
> [!NOTE]
141141
> Durable Functions does *not* support `managedIdentityResourceId` when using user-assigned identity. Use `clientId` instead.

articles/azure-functions/durable/durable-functions-diagnostics.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -605,7 +605,7 @@ Azure Functions supports debugging function code directly, and that same support
605605
606606
## Storage
607607

608-
By default, Durable Functions stores state in Azure Storage. You can inspect orchestration state and messages in the queues using tools such as [Microsoft Azure Storage Explorer](../../vs-azure-tools-storage-manage-with-storage-explorer.md).
608+
By default, Durable Functions stores state in Azure Storage. You can inspect orchestration state and messages in the queues using tools such as [Microsoft Azure Storage Explorer](../../storage/storage-explorer/vs-azure-tools-storage-manage-with-storage-explorer.md).
609609

610610
:::image type="content" source="./media/durable-functions-diagnostics/storage-explorer.png" alt-text="Screenshot of Azure Storage Explorer showing Durable Functions orchestration state in tables and queues.":::
611611

0 commit comments

Comments
 (0)