Question

Difficulty: MediumServerless and Web Application Hosting

A retail company is designing the hosting architecture for a new serverless order management system. The solution must host two distinct services:

1. An order intake service that processes incoming HTTP webhooks. This service must scale dynamically to zero when idle and executes for less than three minutes per invocation.
2. A data ingestion background service that processes large files from a storage queue. Each message processing job runs continuously and can take up to 25 minutes to complete.

Which two Azure hosting options should you recommend to meet these requirements while minimizing administrative overhead? (Select TWO.)

  1. Azure Functions on a Consumption plan to host the order intake serviceAnswer
  2. Azure Container Apps Jobs to host the data ingestion background serviceAnswer
  3. C
    Azure Functions on a Consumption plan to host the data ingestion background service
  4. D
    Azure Kubernetes Service (AKS) to host the order intake service

Answer

Azure Functions on a Consumption plan should be used to host the order intake service, and Azure Container Apps Jobs should be used to host the data ingestion background service.
The correct recommendation is to host the order intake service on Azure Functions on a Consumption plan and host the data ingestion background service on Azure Container Apps Jobs. Azure Functions on a Consumption plan scale to zero and easily accommodate the 3-minute execution limit of the HTTP webhooks. Azure Container Apps Jobs are optimized for containerized tasks that run to completion and can execute for up to several hours, which accommodates the 25-minute execution duration without the management overhead of an AKS cluster.

Step-by-Step Solution

1
Evaluate the execution time and workload characteristics of the order intake service.
The order intake service receives short-lived HTTP requests that execute in under 3 minutes. It requires automatic scaling and scaling to zero to optimize costs.
Azure Functions on a Consumption plan matches these serverless requirements and provides built-in scaling to zero with a maximum execution time limit of 10 minutes.
2
Evaluate the execution time and workload characteristics of the data ingestion background service.
The background service processes queue-based workloads that can take up to 25 minutes per execution, which exceeds standard serverless timeout limits.
An Azure Functions Consumption plan would time out after 10 minutes. Azure Container Apps Jobs support long-running, run-to-completion tasks that can execute for hours, while scaling to zero when the queue is empty.
3
Assess the administrative overhead constraints of the available solutions.
Azure Kubernetes Service (AKS) introduces unnecessary administrative complexity for hosting simple webhooks compared to serverless offerings.
Choosing Azure Functions and Azure Container Apps Jobs minimizes operational overhead, satisfying the host management constraints.

Key Concept

Selecting serverless hosting options based on execution timeouts and administrative overhead
Estimated Time:1m 30s
Rate this question