Professional Documents
Culture Documents
FOR USE ONLY AS PART OF MICROSOFT VIRTUAL TRAINING DAYS PROGRAM. THESE MATERIALS ARE NOT AUTHORIZED
FOR DISTRIBUTION, REPRODUCTION OR OTHER USE BY NON-MICROSOFT PARTIES.
Microsoft Azure Virtual
Training Day: Azure for
Developers
Course Agenda Module 1 Module 4
Overview of Azure and App Deploying Apps in Azure App
Related Services Service
Module 2 Module 5
Overview of Various Database Overview of Integration options
Options in Azure in Azure for your web apps
Module 3 Module 6
Manage your Data with Azure Optimize and Monitor your
Cosmos DB Apps
Overview of Azure
and App related services
In this module…
Hosting options
Developer tools
Challenges
Patching, Management, Limitation of execution Cold starts, long running
Deployment environment, not event- processes
driven
Less Agile development & deployment More Agile development & deployment
Shared Responsibility Model
Responsibility On- IaaS PaaS SaaS
Balance of control and responsibility depends on the Prem
category of the service
Applications
MOVE-IN READY
Data
Runtime
SOME ASSEMBLY REQUIRED
Middleware
Virtualization
Servers
Storage
99.9% SLA
Azure Static Web Apps
End-to-end development
experience
Azure Functions
Streamlined build and
deployment Azure Static Web
Apps managed
service
Azure Container Apps
Serverless containers for microservices
Public API endpoints
Microservices
Event-driven processing
Background processing
Web Apps
Azure Kubernetes Service
Simplify the deployment, management and operations of your containers.
Deploy and Manage Scale and run applications Secure your Kubernetes
Kubernetes with ease with confidence environment
More choices and full integration into Azure’s ecosystem and services
Enterprise ready
Developer tools
What is Git? and Why do we Need it?
GitHub
What is GitHub?
Expertise sharing
Cross-team collaboration
Improved code reuse
Codespaces on GitHub
GitHub Actions (CI/CD)
Increased velocity Learn about GitHub
Benefits of GitHub
Features of GitHub:
• Automate from code to cloud
• Securing software, together
• Seamless code review
• Code and documentation in one place
• Coordinate
• Manage teams
Developer tools: Visual Studio Code
• Most popular development
environment.
Save money and simplify Lower total cost Simple, familiar, and
of ownership powerful SQL Server
management of security and (TCO)
high availability at no
additional cost
Varied consistency levels: Offers five consistency models. Provides control over
performance-consistency tradeoffs, backed by comprehensive SLAs
Low latency: Serve <10 ms read and <10 ms write requests at the 99th percentile
Elastic
Scalability
Azure Cosmos DB resource
hierarchy
Azure Cosmos DB structure
Elements in an Azure Azure Cosmos databases Azure Cosmos containers Azure Cosmos items
Cosmos account You can create one or multiple An Azure Cosmos container is Depending on which API you
An Azure Cosmos container is Azure Cosmos databases the unit of scalability both for use, an Azure Cosmos item
the fundamental unit of under your account. A provisioned throughput and can represent either a
scalability. database is analogous to a storage. document in a collection, a
Azure Cosmos DB namespace. A container is horizontally row in a table, or a node or
transparently partitions your A database is the unit of partitioned and then edge in a graph.
container using the logical management for a set of replicated across multiple
partition key that you specify Azure Cosmos containers. regions.
in order to elastically scale
your provisioned throughput
and storage.
Azure Cosmos DB example
Demo: Provisioning an
Azure Cosmos DB instance
Deploying Apps in Azure App Service
In this module…
Introduction The pricing tier of an How does my app run What if my app needs
An App Service plan App Service plan and scale? more capabilities or
defines a set of compute • Shared compute In the Free and Shared features?
resources for a web app to • Dedicated compute tiers, an app receives • Your App Service plan
run. CPU minutes on a can be scaled up and
• Isolated
One or more apps can be shared VM instance and down at any time.
• Consumption can't scale out.
configured to run on the
same computing resources In other tiers, an app
(or in the same App runs on all the VM
Service plan). instances configured in
the App Service plan.
Service plans support multiple apps
Basic concepts Feature flag usage in code Feature flag declaration Feature flag repository
• Feature flag 1. if (featureFlag) • Each feature flag has two • Azure App Configuration is
parts, a name and a list of designed to be a centralized
• Feature manager 2. bool featureFlag =
one or more filters repository for feature flags.
true;
• Filter
• The feature manager • You can use it to define
3. bool featureFlag =
supports appsettings.json as a different kinds of feature
isBetaUser();
configuration source for flags and manipulate their
4. if (featureFlag) { feature flags. states
} else { • Easily access these feature
} flags from your application
Scale apps in Azure App
Service
Examine autoscale factors
What is autoscaling?
Autoscaling is a cloud system or process that adjusts available resources based on the current demand. Autoscaling performs
scaling in and out, as opposed to scaling up and down.
Enable autoscaling Add scale conditions Create scale rules Monitor autoscaling
To get started with autoscaling Once you enable autoscaling, A metric-based scale condition activity
navigate to to your App Service you can edit the automatically contains one or more scale rules. The Azure portal enables you to
plan in the Azure portal and created default scale condition, You use the Add a rule link to track when autoscaling has
select Scale out (App Service and you can add your own add your own custom rules. occurred through the Run
plan) in the Settings group in custom scale conditions. history chart. This chart shows
the left navigation pane. how the number of instances
varies over time, and which
autoscale conditions caused
each change.
Autoscale best practices
Ensure the maximum and minimum values are different and have an adequate margin between them
If local cache is enabled, trigger local cache Now that the source slot has the pre-swap app
initialization by making an HTTP request to the previously in the target slot, perform the same
application root ("/") on each instance of the operation by applying all settings and restarting
source slot. the instances.
Demo: Deploying the
customer feedback app
Overview of integration options
available in Azure for your web apps
In this module…
• Managed identities for Azure resources: When you deploy an app on a virtual
machine in Azure, you can assign an identity to your virtual machine that has
access to Key Vault.
• Service principal and certificate: You can use a service principal and an associated
certificate that has access to Key Vault.
• Service principal and secret: Although you can use a service principal and a secret
to authenticate to Key Vault, we don't recommend it.
Azure DevOps and GitHub
Azure DevOps overview
• Plan work
• Collaborate on code development
• Build and deploy applications
Azure DevOps
Azure Boards Azure Repos Azure Pipelines Azure Test Azure Artifacts
Plans
Plan, track, and Unlimited CI/CD that Toolkit for test Create, host,
discuss work cloud-hosted works with any management and share
across teams. private Git language, and exploratory packages.
repos. platform and testing.
cloud.
GitHub integration
Feature Description
Link work items to GitHub Mentioned work items in GitHub comments are
commits, pull requests and configured as hyperlinks to support quick navigation.
issues.
Azure Cognitive Services
Azure Cognitive Services
Cognitive Services can be categorized into four main pillars:
Vision APIs provide advanced cognitive algorithms for processing images.
Speech APIs add speech-enabled features to applications like speech-to-text, text-to-speech,
speech translation, and many more.
Language APIs provide Natural Language Processing, Language Understanding, translation,
and more.
Decision APIs provide the ability to monitor and detect abnormalities in time series data,
content moderation, and more.
Optimize and monitor your apps
In this module…
Azure Monitor
Application Insights
Log-based metrics
Application Map
Spot performance
bottlenecks or failure
hotspots across all
components of your
distributed application