Azure Function App: Processing Azure Storage Blob Data - AZ-204 Exam Solution

Using Durable Function Async Pattern for Blob Data Processing

Question

Note: This question is part of a series of questions that present the same scenario.

Each question in the series contains a unique solution that might meet the stated goals.

Some question sets might have more than one correct solution, while others might not have a correct solution.

After you answer a question in this section, you will NOT be able to return to it.

As a result, these questions will not appear in the review screen.

You develop an HTTP triggered Azure Function app to process Azure Storage blob data.

The app is triggered using an output binding on the blob.

The app continues to time out after four minutes.

The app must process the blob data.

You need to ensure the app does not time out and processes the blob data.

Solution: Use the Durable Function async pattern to process the blob data.

Does the solution meet the goal?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B.

B.

Instead pass the HTTP trigger payload into an Azure Service Bus queue to be processed by a queue trigger function and return an immediate HTTP success response.

Note: Large, long-running functions can cause unexpected timeout issues.

General best practices include: Whenever possible, refactor large functions into smaller function sets that work together and return responses fast.

For example, a webhook or HTTP trigger function might require an acknowledgment response within a certain time limit; it's common for webhooks to require an immediate response.

You can pass the HTTP trigger payload into a queue to be processed by a queue trigger function.

This approach lets you defer the actual work and return an immediate response.

https://docs.microsoft.com/en-us/azure/azure-functions/functions-best-practices

Yes, the proposed solution using Durable Functions async pattern would meet the goal of processing the blob data without timing out.

The Durable Functions async pattern allows long-running tasks to be broken up into smaller, more manageable chunks, which can be executed asynchronously. This pattern involves creating an orchestrator function that can manage the execution of multiple activity functions, allowing for parallel and sequential execution.

By using the Durable Functions async pattern, the HTTP triggered Azure Function app can delegate the processing of the blob data to an orchestrator function. The orchestrator function can then invoke activity functions, which can execute smaller portions of the long-running task asynchronously.

By breaking up the processing into smaller chunks, the app can avoid hitting the four-minute timeout limit. The orchestrator function can keep track of the progress of the activity functions and handle any failures that may occur. The app can then continue processing the blob data without timing out.

Therefore, the proposed solution of using Durable Function async pattern to process the blob data would meet the goal of ensuring the app does not time out and processes the blob data.