General info
Theory to practice ratio: 90% practice
Duration: 3 days
Goal
From theory to practice. This workshop is designed to put developers and architects on a fast track to developing distributed systems in Azure by:
- Starting with the most needed theory shown on attendee done exercises.
- Highlighting the differences between Azure compute offering.
- Being hands-on heavy
- Using tools for the whole application lifecycle. From local development, through deployment, to operations.
Program
- Introduction
- Synchronus patterns This part of the training is done using Kubernetes.
- Retry (normal, exponential retry, jitter)
- Timeout (external and internal)
- Fallback
- Caching
- Service discovery using
- Health checks vs. liveness checks
- API gateway (API Management)
- Role of API Gateway
- Request aggregation
- Security
- Authentication
- Internal security
- Security features of API Management
- JWT tokens
- Symmetric keys
- Asymmetric keys
- Token validation
- Hardening security
- Key/secret management in Key Vault
- Risks and issues
- Token encryption
- Asynsynchronus patterns This part of the training is done using Azure Service Bus.
- Request/response with messages
- Publish/subscribe
- Command vs. event vs. message
- Role of time and message scheduling
- Orchestration based sagas
- Problems with message architecture and ways to mitigate it
- Message deduplication
- Dead letter queue
- More than one delivery
- Message order
- Lack of transactionality
- Zombie messages
- Message versioning
- Data change between message send and message delivery
- Performance
- Large messages
- Parallel message processing
- No guarantee of delivery
- Message denial (nontechnical failure)
- Evaluating system consistency
- Hosting
- App Service
- How it works and placement on the axis of Azure services.
- Plans and pricing
- Scaling
- Auto-scaling
- Deployment
- Deployment slots
- Debugging
- Linux vs. Windows
- Running Docker containers
- Azure Functions This training is executed in NodeJS and C#.
- Architecture and placement on the axis of Azure services.
- Plans and pricing
- Local development
- Cross function communication
- Durable functions
- AKS
- K8s vs AKS
- Scaling
- Deployment
- App Service
- Operations
- Application Insights
- Tracing
- Logging
- Profiling
- Azure DevOps
- Deployment
- Build and deployment pipelines
- Container deployment to Azure Registry
- Application Insights
Materials
After the training all attendees get a before and after zip package with all excercises done during the workshop.