Microsoft Azure Overview for Developers
In this module you will get a broad overview of Azure, and the different options for getting your applications in the
- Overview of Microsoft Azure
- Usage Scenarios
- Software as a Service (SaaS)
- Platform as a Service (PaaS)
- Infrastructure as a Service (IaaS)
- The Azure Management Portals
- Azure Components
- Deployment options: Azure App Services, Cloud Services and Virtual Machines
App Service Plans
Azure introduced the concept of an "app service", which can be a web app, API app or mobile app. These services are running
in a Service plan, which determines region, scaling and instance size of your app services.
- What is an App Service
- Purpose of service plans
- Creating a service plan
- Scaling a service plan
- Moving and cloning apps to other service plans
App Services: Web Apps
Adding your website to Azure can easily be done with Web apps. In this module, you will learn how to create them, and
the different deployment options.
- Using the Web Site Gallery
- Deploying from Visual Studio
- Configuring app settings, SSL, domain names and backup scheduling
- Monitoring your Web App
- Running/testing locally
- Spinning up more website instances
- How to implement traffic routing for A/B testing
Storing your data in the Cloud
Where do you store your data in the cloud? Different options exist. In this module, you will learn more about the available
options like: Blob, File and Table-storage and how to implement them into your website.
- The advantages of storing data in the cloud
- Microsoft Azure storage concepts
- Storing your website files in Azure Blob Storage
- Securing your storage with Shared Access Signatures
- Using the Azure CDN in your websites to serve your assets
Brokered Messaging in the cloud
An important part for messaging in the cloud is the Service Bus. This one has different options like Relaying, Notification Hubs, IoT Hubs, etc...
Here we will focus on Queues, Topics and Subscriptions which can be used for sending messages between the different parts of your cloud application
- Using Service Bus Queues for decoupling applications
- Dispatching messages with Topics and Subscriptions
- Adding filters to Subscriptions
App Services: API Apps
API Apps is an easy way for adding REST-services into the Azure Cloud. You will learn how to create these apps, and how
to add metadata to them using Swagger.
- Extending your Azure Web apps and mobile apps with API apps
- Expose metadata with Swagger
- Auto-generate an SDK for your API App
Serverless Computing with Azure Functions
In this module, you will learn how to add functionality in the cloud, without having to bother about servers, allowing
you to react to events happening in your applications or to offload some worker jobs from your website.
- Serverless Azure Functions
- Function triggering options
- Integrating with other Azure services
- Sending triggers from your website via Azure Storage Queues
Serverless Computing with Logic Apps
Logic Apps allows us to create workflow-like applications, by linking “connectors” together. Connectors can be chosen from an extensive gallery, or you can use your own API apps.
- Automate Business Processes with Azure Logic App Templates
- Create Workflows and Workflow Triggers
- Connecting Logic Apps to data and services with Connectors
Azure SQL Database
In this module you will see where you can store your relational data in the cloud, using Azure SQL, and how to connect
to your cloud databases.
- Azure SQL Database feature set
- Designing an Azure SQL Database
- Connecting your apps with Azure SQL Database
- Migrating data to Azure SQL Database
Storing your data in Cosmos DB
Cosmos DB is a globally distributed NOSQL database service with elastic scalability
and allowing for multiple types of storage and APIs.
- What is Cosmos DB
- Using document databases using the SQL API
- Using document databases using the MongoDB API
- Using Graph databases using the Gremlin API
- Using key-value databases using the Table API
- The Apache Cassandra API
- Enterprise Readiness
Once you have your website running, you will want to make it load faster. Caching is one of the very first things you
might want to implement. Redis Cache is a popular open source based cache. In this module, you will learn more about
implementing Redis Cache in your websites.
- What is Redis Cache
- Data types you can use in your cache
- Accessing the cache
- Implementing Redis Cache into your website
Securing your applications and API with Azure Active Directory
Azure Active Directory is a cloud-based identity and access management tool. You will learn the basics of Azure Active
Directory, and use it to secure your applications. You will also learn how to use AAD and OAuth to grant rights to
native applications, using your web applications.
- Identity management in the cloud
- User and group management
- Registering your applications
- Using the Active Directory Authentication Library (ADAL) / Microsoft Authentication Library (MSAL)
- Implement role based security into your applications
Logging and monitoring your applications with Application Insights
In this module, you will learn about Applications Insights which allows you to detect and diagnose exceptions and application
performance issues in the cloud. You will learn how to implement Applications Insights into your website to monitor
your backend and frontend behaviour.
- Enabling Application Insights
- Diagnosing Failures
- Diagnosing Dependencies
- Custom events and using Metrics Explorer
- Availability and Performance
- Using Alerts to detect live problems early
- Snapshot debugging
- Power BI dashboards
Storing non-relational data in CosmosDb
We work with different types of data.Relational data can be stored in Azure SQL. Documents can be stored in Azure Blob storage. Table storage gives us a simple key-value based storage system.
But there is more! CosmosDb is a globally distributed, multi-model database service that can be used for non-relational data or graph-databases.
- What is CosmosDb ?
- The DocumentDb API
- Query Syntax
- User Defined Functions, Triggers and Stored Procedures
- The MongoDb API
- The Graph API
- The Table API
- CosmosDb Tools
The Azure Resource Manager allows us to group different parts of an application together in a resource group. It also
allows us to deploy different parts as one whole by using ARM templates.
- The Azure Resource Manager
- The purpose of Resource groups
- Declarative syntax for ARM templates
- Getting ARM-templates for your deployed resources
- Creating templates in Visual Studio
- Deploying with templates
Deployment with Visual Studio Team Services
One of the options for deploying app services is by connecting to source code repositories. You will learn how to enable
deployment from Visual Studio Team Services, and how to enable continuous integration
- Automatic Deployment to Azure
- Performance and Load Testing
- Continuous Integration: Build, Validate and Deploy