Master Class: Designing and Implementing Cloud Native Applications using Microsoft Azure (DICNMA) – Perfil
Esquema Detallado del Curso
Introduction to Cloud Native Applications
- What are Cloud Native Applications
- Cloud Matury Model: From Monolith to Microservices
- What are Cloud Architecture Design Patterns
- Microservices Communication Patterns (Sync, Async, Event Driven)
- API gateway pattern versus the Direct client-tomicroservice communication
Architecture Overview & Building Blocks
- Architecture overwiew of the sample app & services
- Hosting: Azur Container Apps and Functions (Serverless / Containers)
- Authentication & Authorization: Microsoft Identity & Managed Identities
- State & Data: Azure Cosmos DB, Azure SQL, Blob Storage, Redis
- Configuration Management, Secrets: Key Vault, App Config Service
- Messaging : Service Bus, Event Hub, Event Grid
- Real Time: Azure SignalR Service, Azure Web PubSub
- Access & Management: API Management & Application Gateway
- Provisioning of base building blocks using Azure CLI & Bicep
Container Essentials & Configuration Management
- Docker Development Workflow: Multistage Build, Run & Debug
- Publish images to Azure Container Registry
- Using docker-compose.yaml to locally test multiple containers
- Kubernetes Developer Essentials
- Configuration Management (Env Variables, KeyVault & Azure App Config Service)
- Understanding the Sidecar Pattern
Introduction to Azure Container Apps (ACA)
- What is Azure Container Apps
- Azure Container Hosts: Azure Container Apps vs Kubernetes
- Deploying a multi-container App (Ingress, Exgress)
- Working with Secrets & Revisions
- Using Managed Identities & Service Connectors to access Azure resources
- Using Azure App Configuration in Azure Container Apps
- Health Probes, Monitoring, Logging & Observability
- Introduction to Scaling & KEDA (Kubernetes Event Driven Auto-Scaling)
- Stateful Apps using Volume Mounts & Persistent Storage
- Using Jobs in Azure Container Apps
Implementing Microservices using Azure Functions
- OData and Open API Support
- Hosting: Serverless vs Containers
- Hosting and Scaling containerized Functions
- Managed Identities, Key Vault and App Configuration
- Dependency Injection and Data Access using EF Core
- Using Durable Functions to implement long running processes
- Monitoring Durable Functions
- Azure Durable Entities: Aggregation & virtual Actors
NoSQL Data storage using Cosmos DB
- From Relational to NoSQL: Dos and Don'ts
- Domain Driven Design (DDD) and Bounded Context Pattern
- Optimize Partitioning & Performance
- Using SDKs and Entity Framework
- Cosmos DB Change Feed and Event Sourcing
- Understanding the CQRS Pattern
Designing & Implementing Event Driven Apps
- Introduction to Event Driven Architecture
- Messages vs Events & Queues vs Topics
- Common Message Brokers in Azure
- Common Cloud Design Patterns used with Even Driven Architecture
- Domain Events vs Integration Events
- External Communication using CloudEvents
- Orchestration, Choreography, Saga Pattern
Using Distributed Application Runtime - Dapr
- Introduction to Dapr, Architecture & Building Blocks
- Environment Setup, Debugging & State Management
- Secrets and Configuration
- Publish & Subscribe
- Service Invocation & Bindings
- Observability and Distributed Tracing
- Introduction to Dapr Actors
- Using Dapr Components in Azure Container Apps
Optimizing and Securing API Access using Api Management
- API Management (APIM) Recap
- Understanding Gateway Pattern and Backends for Frontend Pattern
- API Versions and Revisions
- Securing API Access using Managed Identities
Implementing Real Time & Micro-Frontends
- Introduction to Micro Frontends
- Implementing Reactive Real Time Frontends using Event Grid & Azure Web PubSub
- Implementing a Micro Frontend as Teams App.