Summary
In this chapter, we discussed the strategies we can use to transform legacy applications into cloud-optimized or cloud-native architectures. We then explored some of the most commonly used Azure services, such as Azure SQL Database, Azure App Service, Azure Functions, and Azure Container Instances.
All modern applications strive to follow cloud-native application principles, which include defining infrastructure dependencies as a code, keeping the configuration separate from the code, building an application for scale, designing the application components as microservices, and using CI/CD.
Azure services help us achieve these principles. We learned that web applications and database servers can be provisioned in a few minutes in the cloud. This is in stark contrast to traditional IT environments in large organizations where similar resources could take several weeks to be made available.
In the next chapter, we'll learn about an exciting new .NET library named...