Question

Difficulty: HardServerless and Web Application Hosting

A university library is designing an automated document archiving system to merge and compress digitized historical manuscripts into PDF/A format.

The system must meet the following requirements:
* Each document merging task is triggered by a message in an Azure Service Bus queue.
* A single archiving task takes between 1212 and 1818 minutes to complete.
* The archiving engine is packaged as a custom Linux-based container image that requires specialized PDF rendering libraries.
* The system must incur zero compute costs when there are no archiving tasks in the queue.
* Infrastructure management and operational overhead must be minimized.

Which Azure compute solution should you recommend?

  1. Azure Container Apps jobsAnswer
  2. B
    Azure Functions on a Consumption plan
  3. C
    Azure Kubernetes Service (AKS) with Event-driven Autoscaling (KEDA)
  4. D
    Azure Virtual Machine Scale Sets using Spot Virtual Machines

Answer

Azure Container Apps jobs
Azure Container Apps jobs are optimized for run-to-completion tasks triggered by events such as queue messages. They support custom containers, can scale down to zero instances (resulting in zero compute cost when idle), support execution durations of up to 2424 hours, and require no cluster management, aligning perfectly with all constraints.

Step-by-Step Solution

1
Analyze the execution duration requirement of 1212 to 1818 minutes.
Azure Functions on a Consumption plan is ruled out because its maximum execution timeout is 1010 minutes.
Selecting a platform with an execution limit lower than the task duration leads to timeout failures.
2
Evaluate the custom container and operational overhead requirements.
Azure Kubernetes Service (AKS) is ruled out because it introduces significant infrastructure management and operational overhead.
The scenario requires minimizing operational overhead, making managed serverless container hosting a better fit than full Kubernetes orchestration.
3
Evaluate the reliability and cost requirements.
Spot Virtual Machines are ruled out because of eviction risks during long-running tasks, and Azure Container Apps jobs is selected because it scales to zero and supports custom containers.
Azure Container Apps jobs natively support scaling to zero cost when idle, accommodate executions up to 2424 hours, run custom containers, and are fully managed.

Key Concept

Selecting serverless hosting options based on execution duration, custom container support, cost efficiency, and operational overhead.
Rate this question