This course is designed to introduce students to developing cloud based applications using Microsoft Azure using Java based tools. This course lays a foundation by covering Azure fundamentals and key compute technologies with virtual machines. It then moves on to SQL Database, identity management, and then to developer platform-as-a-service options within Azure App Services. From there it rounds out the material by covering the range of Azure storage solutions, NoSQL with DocumentDB, and then finally on to advanced topics with Azure Service Bus messaging and micro-services with Azure Service Fabric.
MODULE 1: Introduction to Microsoft Azure
This module introduces the student to cloud computing with the Microsoft Azure platform. It defines key terms and computing models, demonstrates the difference between traditional hosting and cloud hosting from a cost and resource allocation perspective, and covers the difference in responsibilities between a cloud provider and a cloud consumer. It then covers the Microsoft Azure technology stack at a high level and introduces the students to the Microsoft Azure web portal.
MODULE 2: Azure Virtual Machines
In this module, students will be introduced to the Infrastructure-as-a-Service (IaaS) offerings within Microsoft Azure. The lessons and labs cover a wide range of important virtual machine concepts including sizing and performance, configuration, deployment, availability, automation, and configuring OS and data disks. It also covers a broad range of IaaS concepts including managing resource groups, virtual machine scale sets, virtual networks, deployment tools, network security groups, network load balancers, and some additional advanced networking features.
MODULE 3: Introduction to Azure SQL Database
This module introduces the innovative database-as-a-service platform in Azure known as Azure SQL Database. The students will learn about the features of this service including information about performance, scalability, security, configuration, backups, disaster recovery, and elastic database pools.
MODULE 4: Managing Identity in the Cloud
In this module, students will learn about managing identities for web applications leveraging social identity providers (Facebook, Google, Twitter, and Microsoft) as well as Azure Active Directory. Students will also gain hands-on knowledge in setting up web apps with Azure Active Directory authentication.
MODULE 5: Developing and Deploying Azure Web Apps
In this module, students will be introduced to web apps hosted on the Azure App Service platform. Students will learn about how to develop, deploy and configure web applications in Microsoft Azure as well as learn about web jobs, custom domains, SSL, and hybrid connectivity. Students will also gain hands-on experience including enabling Azure Active Directory authentication for a web application.
MODULE 6: Architecting Global Solutions
In this module, students will learn how to take their web applications in Azure and architect them to go global. This module explores critical scalability and performance technologies such as Traffic Manager, Redis Cache, and Content Deployment Network (CDN) to scale out a web app to meet the demands of a global user base.
MODULE 7: Developing Azure Mobile Apps
In this module, students will be introduced to the Mobile Apps feature of the Azure App Services platform. They will learn how the mobile apps backend system works, how to build API controllers to host mobile API functionality, how to enable authentication, offline sync, and push notifications. In the hands-on lab, students will be able to practice building and testing a mobile app database and a mobile app backend API.
MODULE 8: Azure API Management
In this module, students will learn how to implement the API Management system in Microsoft Azure which includes features such as protecting APIs using rate limits and quotas. Students will also learn how to monitor API usage, and to improve API performance using caching and multi-region deployments.
MODULE 9: Building Solutions with Logic Apps
In this module, students will be introduced to the Logic Apps feature of the Azure App Service platform for creating integrated workflows, connected API chains, and automated business processes. Students will receive hands-on practice of creating a workflow using the Logic Apps designer.
MODULE 10: Choosing the Right Storage
In this module, students will be taken through the architectural strengths, features, and differences between a range of storage options inside of the Microsoft Azure cloud platform. These storage solutions include Azure storage accounts, Azure SQL Database, DocumentDB (NoSQL-as-a-service), messaging with the Azure Service Bus, and a few others.
MODULE 11: Azure Storage for Developers
In this module, students will learn about Azure Storage from the perspective of a developer. This module focuses on how and when to use blobs, tables, queues, and Azure files to build new or extend existing applications. It will also instruct students on the use the SDK, security, and encryption.
MODULE 12: Introduction to Cosmos DB
In this module, students will be introduced to NoSQL databases, document databases and the concept and usefulness of different consistency options. The students will also be taught the specifics of DocumentDB, a document database provided as part of the Azure platform, and will be shown how to use this technology effectively in their own solutions.
MODULE 13: Introduction to Azure Service Bus
In this module, the student will be introduced to some of the core capabilities for building distributed solutions using Azure Service Bus. Services will include Notification and Event Hubs, Service Bus relay, as well as Queues, Topics and Hybrid Connections.
MODULE 14: Developing Services with Azure Service Fabric
In this module, students will be introduced to Azure Service Fabric. Students will learn about the architecture of service fabric, and how to design applications using micro-services concepts. They will gain hands on experience by developing an application using Service Fabric locally, and then learn how to deploy it to the Azure Public Cloud.