Best Practices Overview¶
Azure Communication Services (ACS) provides a powerful set of APIs and SDKs for building communication experiences. This section serves as the design judgment layer between the low level platform capabilities and high level SDK implementations. It provides curated guidance for moving from initial proof of concept to a hardened, production ready deployment.
Documentation Map¶
| Document | Focus Area |
|---|---|
| Production Baseline | Minimum controls, resource setup, and initial identity strategy. |
| Security Best Practices | Token management, data privacy, and resource protection. |
| Networking Best Practices | Firewall rules, proxy configuration, and bandwidth planning. |
| Reliability Best Practices | SDK retries, circuit breakers, and connection resilience. |
| Scaling Best Practices | Throughput limits, participant caps, and rate limit handling. |
| Cost Optimization | Pricing model overview and strategies for reducing spend. |
| Common Anti-Patterns | Frequent mistakes and how to avoid them. |
Learning Flow¶
graph TD
A[Start: Development] --> B{New Production?}
B -- Yes --> C[Production Baseline]
B -- No --> D{Existing Audit?}
D -- Hardening --> E[Security & Networking]
D -- Performance --> F[Reliability & Scaling]
D -- Budget --> G[Cost Optimization]
C --> E
E --> F
F --> G
G --> H[Final Review: Anti-Patterns] Recommended Reading Paths¶
Depending on your current project phase, we recommend focusing on specific areas first:
- New Production Rollout: Start with Production Baseline and Security Best Practices.
- Existing App Hardening: Focus on Networking Best Practices and Reliability Best Practices.
- Cost Tuning: Review Cost Optimization and Scaling Best Practices.
Decision Areas Covered¶
This guide addresses critical technical decisions including:
- How to securely manage user access tokens without exposing connection strings.
- How to configure network environments for high quality audio and video.
- How to handle transient errors and service interruptions gracefully.
- How to scale SMS and Email workloads while staying within platform limits.
Who Should Read This¶
- Solution Architects: To design resilient and secure communication architectures.
- Developers: To implement SDKs following established patterns.
- DevOps Engineers: To configure Azure resources and monitor service health.
- Security Professionals: To verify data privacy and identity controls.
Quality Gate Checklist¶
Before deploying your ACS solution to production, verify the following:
- [ ] Connection strings are stored in Azure Key Vault or managed via Managed Identity.
- [ ] Access tokens are generated on the backend and have appropriate TTLs.
- [ ] Firewall rules are configured for TURN/STUN traffic.
- [ ] Retry logic is implemented for all asynchronous operations.
- [ ] Email domains are verified and SMS opt out logic is in place.
See Also¶
Sources¶
- Azure Communication Services Best Practices (Microsoft Learn)
- Practical experience from large scale Azure Communication Services implementations.