Courseiva

AZ-204 Develop Azure compute solutions Practice Question

You are developing an Azure Function that processes messages from an Azure Service Bus queue. The function uses a Service Bus queue trigger and runs on a Consumption Plan. The queue receives a high volume of messages in bursts. You need to ensure that the function scales out to handle the load but does not exceed 10 concurrent instances. Which configuration should you apply?

⚠ Common exam trap

The trap is confusing per-instance concurrency settings (like 'maxConcurrentCalls' in host.json) with the function app's instance-level scale limit ('functionAppScaleLimit'). The question specifically asks to cap the number of concurrent instances.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Set the 'functionAppScaleLimit' application setting to 10 in the function app.

The 'functionAppScaleLimit' application setting controls the maximum number of instances for a function app running on the Consumption plan. Setting it to 10 ensures the app does not scale beyond 10 instances. The 'maxConcurrentCalls' property only limits per-instance concurrency.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Set the 'maxConcurrentCalls' property to 10 in the host.json file.

    Why it's wrong here

    maxConcurrentCalls caps concurrent message-processing calls per function instance, not the number of instances the Consumption Plan scales to. It is tempting because it is the standard Service Bus trigger concurrency knob, and would be correct when limiting parallel processing within a single instance.

  • ✓

    Set the 'functionAppScaleLimit' application setting to 10 in the function app.

    Why this is correct

    The functionAppScaleLimit application setting caps the maximum number of instances a Function App scales out to, so setting it to 10 preserves Consumption Plan burst scaling while enforcing the stated ceiling of 10 concurrent instances.

  • ✗

    Set the 'maxMessageBatchSize' property to 10 in the host.json file.

    Why it's wrong here

    maxMessageBatchSize caps how many queue messages a single function instance processes per invocation; it does not limit the number of instances the Consumption Plan creates. It is tempting because it is a concurrency-related host.json setting, and would be correct when tuning per-instance throughput rather than scale-out ceiling.

  • ✗

    Restrict the Service Bus queue to have a maximum concurrency of 10 at the namespace level.

    Why it's wrong here

    Service Bus namespaces expose no maximum-concurrency setting; concurrency is controlled by the Function host, not the messaging namespace. It is tempting because namespace-level throttling sounds like a scaling control, and would be relevant when limiting messaging throughput or tier quotas rather than function instance count.

About these practice questions

This AZ-204 question is part of Courseiva's 883-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This AZ-204 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-204 exam.