Skip to content

Commit 115ed67

Browse files
committed
blockers
Signed-off-by: Hannah Hunter <[email protected]>
1 parent b8cb7db commit 115ed67

8 files changed

Lines changed: 22 additions & 22 deletions

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ Keep these considerations in mind when choosing the storage account for your Dur
232232

233233
- For performance-sensitive workloads, configure a storage account other than the default account (`AzureWebJobsStorage`). Since Durable Functions uses Azure Storage heavily, using a dedicated storage account isolates Durable Functions storage usage from the internal usage by the Azure Functions host.
234234
- You need standard general purpose Azure Storage accounts when using the Azure Storage provider. All other storage account types aren't currently supported.
235-
- Legacy v1 general purpose storage accounts for Durable Functions is recommended. The newer v2 storage accounts can be more expensive for Durable Functions workloads. [Learn more about Azure Storage account types](../../storage/common/storage-account-overview.md).
235+
- Legacy v1 general purpose storage accounts for Durable Functions are recommended. The newer v2 storage accounts can be more expensive for Durable Functions workloads. [Learn more about Azure Storage account types](../../storage/common/storage-account-overview.md).
236236

237237
## Orchestrator scale-out
238238

articles/azure-functions/durable/durable-functions-perf-and-scale.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ The following table shows which queues each storage provider partitions and the
166166
| **Documentation** | See [Orchestrator scale-out](durable-functions-azure-storage-provider.md#orchestrator-scale-out) | See [Partition count considerations](https://microsoft.github.io/durabletask-netherite/#/settings?id=partition-count-considerations) | n/a |
167167

168168
> [!WARNING]
169-
> You can't change the partition count after you create a task hub. Set it high enough to meet expected scale out requirements for the task hub instance.
169+
> You can't change the partition count after you create a task hub. Set it high enough to meet expected scale-out requirements for the task hub instance.
170170
171171
### Configure partition count
172172

articles/azure-functions/durable/durable-functions-task-hubs.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -192,33 +192,33 @@ After this orchestration is initiated by a client, the application processes it
192192

193193
1. A client requests to start a new orchestration with instance-id "123". After the client completes this request, the task hub contains a placeholder for the orchestration state and an instance message:
194194

195-
:::image type="content" source="./media/durable-functions-task-hubs/work-items-1.png" alt-text="workitems-illustration-step-1":::
195+
:::image type="content" source="./media/durable-functions-task-hubs/work-items-1.png" alt-text="Diagram showing task hub state after orchestration start request (step 1).":::
196196

197197
The label `ExecutionStarted` is one of many [history event types](https://github.com/Azure/durabletask/tree/main/src/DurableTask.Core/History#readme) that identify the various types of messages and events participating in an orchestration's history.
198198

199199
2. A worker executes an *orchestrator work item* to process the `ExecutionStarted` message. It calls the orchestrator function which starts executing the orchestration code. This code schedules two activities and then stops executing when it is waiting for the results. After the worker commits this work item, the task hub contains
200200

201-
:::image type="content" source="./media/durable-functions-task-hubs/work-items-2.png" alt-text="workitems-illustration-step-2":::
201+
:::image type="content" source="./media/durable-functions-task-hubs/work-items-2.png" alt-text="Diagram showing task hub state after first orchestrator work item commit (step 2).":::
202202

203203
The runtime state is now `Running`, two new `TaskScheduled` messages were added, and the history now contains the five events `OrchestratorStarted`, `ExecutionStarted`, `TaskScheduled`, `TaskScheduled`, `OrchestratorCompleted`. These events represent the first episode of this orchestration's execution.
204204

205205
3. A worker executes an *activity work item* to process one of the `TaskScheduled` messages. It calls the activity function with input "2". When the activity function completes, it creates a `TaskCompleted` message containing the result. After the worker commits this work item, the task hub contains
206206

207-
:::image type="content" source="./media/durable-functions-task-hubs/work-items-3.png" alt-text="workitems-illustration-step-3":::
207+
:::image type="content" source="./media/durable-functions-task-hubs/work-items-3.png" alt-text="Diagram showing task hub state after first activity work item commit (step 3).":::
208208

209209
4. A worker executes an *orchestrator work item* to process the `TaskCompleted` message. If the orchestration is still cached in memory, it can just resume execution. Otherwise, the worker first [replays the history to recover the current state of the orchestration](durable-functions-orchestrations.md#reliability). Then it continues the orchestration, delivering the result of the activity. After receiving this result, the orchestration is still waiting for the result of the other activity, so it once more stops executing. After the worker commits this work item, the task hub contains
210210

211-
:::image type="content" source="./media/durable-functions-task-hubs/work-items-4.png" alt-text="workitems-illustration-step-4":::
211+
:::image type="content" source="./media/durable-functions-task-hubs/work-items-4.png" alt-text="Diagram showing task hub state after second orchestrator work item commit (step 4).":::
212212

213213
The orchestration history now contains three more events `OrchestratorStarted`, `TaskCompleted`, `OrchestratorCompleted`. These events represent the second episode of this orchestration's execution.
214214

215215
5. A worker executes an *activity work item* to process the remaining `TaskScheduled` message. It calls the activity function with input "1". After the worker commits this work item, the task hub contains
216216

217-
:::image type="content" source="./media/durable-functions-task-hubs/work-items-5.png" alt-text="workitems-illustration-step-5":::
217+
:::image type="content" source="./media/durable-functions-task-hubs/work-items-5.png" alt-text="Diagram showing task hub state after second activity work item commit (step 5).":::
218218

219219
6. A worker executes another *orchestrator work item* to process the `TaskCompleted` message. After receiving this second result, the orchestration completes. After the worker commits this work item, the task hub contains
220220

221-
:::image type="content" source="./media/durable-functions-task-hubs/work-items-6.png" alt-text="workitems-illustration-step-6":::
221+
:::image type="content" source="./media/durable-functions-task-hubs/work-items-6.png" alt-text="Diagram showing task hub state after final orchestrator work item commit (step 6).":::
222222

223223
The runtime state is now `Completed`, and the orchestration history now contains four more events `OrchestratorStarted`, `TaskCompleted`, `ExecutionCompleted`, `OrchestratorCompleted`. These events represent the third and final episode of this orchestration's execution.
224224

articles/azure-functions/durable/durable-functions-zero-downtime-deployment.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ For detailed configuration and implementation guidance, see [Orchestration versi
5050

5151
Define new versions of your functions and leave the old versions in your function app. As you can see in the diagram, a function's version becomes part of its name. Because previous versions of functions are preserved, in-flight orchestration instances can continue to reference them. Meanwhile, requests for new orchestration instances call for the latest version, which your orchestration client function can reference from an app setting.
5252

53-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/versioning-strategy.png" alt-text="Versioning strategy":::
53+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/versioning-strategy.png" alt-text="Diagram showing the name-based versioning strategy for Durable Functions.":::
5454

5555
In this strategy, every function must be copied, and its references to other functions must be updated. You can make it easier by writing a script. Here's a [sample project](https://github.com/TsuyoshiUshio/DurableVersioning) with a migration script.
5656

@@ -75,7 +75,7 @@ Use the following procedure to set up this scenario.
7575

7676
The following diagram shows the described configuration of deployment slots and storage accounts. In this potential predeployment scenario, version 2 of a function app is running in the production slot, while version 1 remains in the staging slot.
7777

78-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-slot.png" alt-text="Deployment slots and storage accounts":::
78+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-slot.png" alt-text="Diagram showing deployment slots and storage accounts before slot swap.":::
7979

8080
### host.json examples
8181

@@ -130,21 +130,21 @@ public static async Task<IActionResult> StatusCheck(
130130

131131
Next, configure the staging gate to wait until no orchestrations are running. For more information, see [Release deployment control using gates](/azure/devops/pipelines/release/approvals/gates)
132132

133-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-gate.png" alt-text="Deployment gate":::
133+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-gate.png" alt-text="Screenshot showing an Azure Pipelines deployment gate configuration.":::
134134

135135
Azure Pipelines checks your function app for running orchestration instances before your deployment starts.
136136

137-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-gate-2.png" alt-text="Deployment gate (running)":::
137+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-gate-2.png" alt-text="Screenshot showing a running Azure Pipelines deployment gate check.":::
138138

139139
Now the new version of your function app should be deployed to the staging slot.
140140

141-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-slot-2.png" alt-text="Staging slot":::
141+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-slot-2.png" alt-text="Diagram showing the new app version deployed to the staging slot.":::
142142

143143
Finally, swap slots.
144144

145145
Application settings that aren't marked as deployment slot settings are also swapped, so the version 2 app keeps its reference to storage account A. Because orchestration state is tracked in the storage account, any orchestrations running on the version 2 app continue to run in the new slot without interruption.
146146

147-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-slot-3.png" alt-text="Deployment slot":::
147+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/deployment-slot-3.png" alt-text="Diagram showing slot swap completion with app settings moved to production.":::
148148

149149
To use the same storage account for both slots, you can change the names of your task hubs. In this case, you need to manage the state of your slots and your app's HubName settings. To learn more, see [Task hubs in Durable Functions](durable-functions-task-hubs.md).
150150

@@ -166,17 +166,17 @@ The first time an orchestration request is received, the router does the followi
166166

167167
The router manages the state of which version of your app's code is deployed to which function app in Azure.
168168

169-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/application-routing.png" alt-text="Application routing (first time)":::
169+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/application-routing.png" alt-text="Diagram showing first-time application routing and deployment flow.":::
170170

171171
The router directs deployment and orchestration requests to the appropriate function app based on the version sent with the request. It ignores the patch version.
172172

173173
When you deploy a new version of your app without a breaking change, you can increment the patch version. The router deploys to your existing function app and sends requests for the old and new versions of the code, which are routed to the same function app.
174174

175-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/application-routing-2.png" alt-text="Application routing (no breaking change)":::
175+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/application-routing-2.png" alt-text="Diagram showing application routing when there is no breaking change.":::
176176

177177
When you deploy a new version of your app with a breaking change, you can increment the major or minor version. Then the application router creates a new function app in Azure, deploys to it, and routes requests for the new version of your app to it. In the following diagram, running orchestrations on the 1.0.1 version of the app keep running, but requests for the 1.1.0 version are routed to the new function app.
178178

179-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/application-routing-3.png" alt-text="Application routing (breaking change)":::
179+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/application-routing-3.png" alt-text="Diagram showing application routing for a deployment with breaking changes.":::
180180

181181
The router monitors the status of orchestrations on the 1.0.1 version and removes apps after all orchestrations are finished.
182182

@@ -186,7 +186,7 @@ Each function app should use separate scheduling queues, possibly in separate st
186186

187187
For more information, see [Manage instances in Durable Functions in Azure](durable-functions-instance-management.md).
188188

189-
:::image type="content" source="media/durable-functions-zero-downtime-deployment/tracking-store-settings.png" alt-text="Tracking store settings":::
189+
:::image type="content" source="media/durable-functions-zero-downtime-deployment/tracking-store-settings.png" alt-text="Diagram showing shared tracking store settings across versioned function apps.":::
190190

191191
## Next steps
192192

articles/azure-functions/durable/durable-task-scheduler/durable-task-schedulers-schedules.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ Monitor scheduled orchestrations using the [Durable Task Scheduler dashboard](./
211211

212212
Explore complete working examples that demonstrate schedule operations.
213213

214-
- [Schedule console app](https://github.com/microsoft/durabletask-dotnet/tree/main/samples/ScheduleConsoleApp): A Demonstrates how to create, pause, resume, and list schedules in a console application.me, delete, and list endpoints.
214+
- [Schedule console app](https://github.com/microsoft/durabletask-dotnet/tree/main/samples/ScheduleConsoleApp): Demonstrates how to create, pause, resume, delete, and list schedules in a console application.
215215

216216
## Next steps
217217

articles/azure-functions/durable/quickstart-js-vscode.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ Azure Functions Core Tools gives you the capability to run an Azure Functions pr
262262

263263
4. In the terminal panel, copy the URL endpoint of your HTTP-triggered function.
264264

265-
:::image type="content" source="media/quickstart-js-vscode/functions-f5.png" alt-text="Screenshot of the Visual Studio code terminal panel. The terminal shows the output of running a Durable Functions app locally.":::
265+
:::image type="content" source="media/quickstart-js-vscode/functions-f5.png" alt-text="Screenshot of the Visual Studio Code terminal panel. The terminal shows the output of running a Durable Functions app locally.":::
266266

267267
::: zone pivot="nodejs-model-v3"
268268

articles/azure-functions/durable/quickstart-mssql.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ Open another terminal window in your app's root folder and start the Function ap
210210

211211
## Run your app in Azure
212212

213-
To run your app in Azure, you need to create various resources. For convenient clean up later, create all the resources in the same resource group.
213+
To run your app in Azure, you need to create various resources. For convenient cleanup later, create all the resources in the same resource group.
214214

215215
### Create an Azure SQL database
216216

articles/azure-functions/durable/quickstart-powershell-vscode.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Use Durable Functions, a feature of [Azure Functions](../functions-overview.md),
1515

1616
In this quickstart, you use the Durable Functions extension in Visual Studio Code to locally create and test a "hello world" Durable Functions app in Azure Functions. The Durable Functions app orchestrates and chains together calls to other functions. Then, you publish the function code to Azure. The tools you use are available via the Visual Studio Code extension.
1717

18-
:::image type="content" source="./media/quickstart-js-vscode/functions-vs-code-complete.png" alt-text="Running a Durable Functions app in Azure.":::
18+
:::image type="content" source="./media/quickstart-js-vscode/functions-vs-code-complete.png" alt-text="Screenshot showing a Durable Functions app in Visual Studio Code.":::
1919

2020
## Prerequisites
2121

0 commit comments

Comments
 (0)