An educational technology company is designing a system that automatically executes and grades programming assignments submitted by students.
The grading process has the following requirements:
* Each submission must run in an isolated, sandboxed container.
* The execution of a grading job takes between 2 and 15 minutes to complete.
* The system must dynamically scale the number of running containers based on the queue depth of an Azure Service Bus queue containing the submissions.
* To meet strict audit requirements for regional data sovereignty, student execution logs must be isolated within their respective geographic regions and not cross regional boundaries.
* The company wants to minimize the administrative effort required to manage infrastructure, container orchestration, and virtual machine nodes.
You need to design the compute and monitoring solution for the grading system.
Which solution should you recommend?
- Azure Container Apps jobs configured with event-driven scaling based on the Service Bus queue and separate Log Analytics workspaces in each region.Cevap
- BAn Azure Kubernetes Service (AKS) cluster with KEDA installed to manage pod scaling, using a single central Log Analytics workspace for all regions.
- CAzure Functions on a Consumption plan with a Service Bus trigger, configured to output logs to regional Log Analytics workspaces.
- DAzure Container Apps jobs configured with event-driven scaling based on the Service Bus queue, using a single central Log Analytics workspace to collect logs from all regions.