Courseiva
Develop Azure compute solutionshardMultiple SelectObjective-mapped

AZ-204 Develop Azure compute solutions Practice Question

Your Azure Container Apps solution uses Dapr for microservices communication. Which THREE Dapr building blocks are essential for service-to-service invocation and state management?

⚠ Common exam trap

Watch out — candidates often confuse Bindings with service invocation (both involve external communication) or assume Actors are required for state management, but Dapr separates these concerns into distinct building blocks with specific use cases.

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

Service Invocation

Service Invocation (A) is correct because Dapr's service invocation building block enables direct, secure service-to-service communication using gRPC or HTTP, with built-in mTLS, retries, and observability. State Management (E) is correct because it provides a key-value store abstraction for managing state across microservices, supporting pluggable state stores like Redis, Cosmos DB, or SQL Server. Pub/Sub (C) is correct because it enables asynchronous event-driven communication between services, decoupling producers and consumers via message brokers like Kafka, RabbitMQ, or Azure Service Bus.

Answer analysis

Option-by-option breakdown

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

  • Service Invocation

    Why this is correct

    Dapr's Service Invocation building block provides a consistent and secure way for microservices to communicate with each other directly. It abstracts away complexities like service discovery, mTLS encryption, and retries, enabling reliable synchronous calls between services regardless of their underlying protocol or location. This makes it a fundamental component for direct, internal service-to-service communication within a distributed application.

  • Bindings

    Why it's wrong here

    Dapr Bindings are specifically designed for integrating services with external systems and resources, acting as input or output triggers. They facilitate communication between a Dapr-enabled service and an external component, such as a database, message queue, or cloud service. Bindings are not intended for direct service-to-service communication within the application's microservice mesh, making them unsuitable for internal invocation.

  • Pub/Sub

    Why this is correct

    Dapr's Publish/Subscribe (Pub/Sub) building block enables asynchronous, decoupled communication between services by allowing them to publish messages to named topics and subscribe to those topics. This pattern is essential for building event-driven architectures, where services react to events without direct knowledge of the message producers or consumers. Pub/Sub enhances scalability and resilience, often complementing synchronous service invocation for different communication needs.

  • Actors

    Why it's wrong here

    Dapr's Actors building block implements the virtual actor pattern, providing a framework for creating isolated, single-threaded units of state and behavior. While powerful for managing concurrent state and complex workflows, actors are a specialized pattern for specific scenarios requiring strong consistency and state encapsulation. They are not the general-purpose mechanism for basic service-to-service invocation or simple, shared state management across multiple services.

  • State Management

    Why this is correct

    The Dapr State Management building block offers a consistent API for services to store and retrieve state, abstracting away the underlying state store implementation. It supports various pluggable state stores (e.g., Redis, Cosmos DB) and provides features like strong consistency and optimistic concurrency control. This building block is crucial for building stateful microservices without tightly coupling them to a specific data store technology, simplifying persistent data handling.

About these practice questions

Courseiva writes every AZ-204 question from scratch — 881 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or 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.