Study Azure AZ-305 App Architecture: key concepts, common traps, and exam decision cues.
Application architecture questions in AZ-305 usually test whether you can separate synchronous calls, asynchronous messaging, event distribution, and shared configuration. The exam is less about memorizing every Azure integration service and more about recognizing the communication pattern the system actually needs.
| Need | Strongest first fit | Why |
|---|---|---|
| request-response API exposure | API-first application boundary, often with API Management | synchronous client-to-service interaction |
| reliable decoupled work between services | queue or broker pattern such as Service Bus | durable asynchronous processing |
| event notification to many subscribers | event-routing pattern such as Event Grid | publish-subscribe behavior |
| high-throughput telemetry or stream ingestion | streaming pattern such as Event Hubs | ordered or large-scale event ingestion |
| centralized app settings and feature values | configuration service pattern | reduce hard-coded environment differences |
| Azure pattern | Best mental cue |
|---|---|
| API Management | front door for APIs, governance, versioning, and client exposure |
| Service Bus | reliable message delivery and decoupled background work |
| Event Grid | lightweight eventing and fan-out notifications |
| Event Hubs | large-volume streaming ingestion |
| App Configuration | centralized app settings and feature control |
The mistake is to answer every messaging stem with the same broker just because it can technically work.
| Trap | Better rule |
|---|---|
| using a queue for every event distribution problem | fan-out event notifications are not the same as durable work queues |
| treating API exposure and backend async messaging as one product choice | external contract and internal decoupling are different design layers |
| pushing secrets and config into the same bucket | secrets and configuration overlap operationally but are not identical controls |
| choosing the most feature-rich broker before clarifying message behavior | start with pattern fit, not with product complexity |