Preface
Microsoft Azure is a robust cloud platform that is able to address hundreds of different business scenarios. It comes with a variety of application-oriented services, which can be used to implement messaging, store data, and monitor the system as a whole. With the rapid adoption of AI technologies such as generative AI (and especially LLMs), Azure has become one of the best building and hosting platforms for modernizing your application. Keeping up to date in such a dynamic environment is a challenge though. This is why this book was created. It will guide you through various services and concepts and explain how Azure components can be used to achieve the best results. With the addition of new topics (such as Azure OpenAI Service and GitHub Actions), it will help you gain confidence when working with the cloud when building a new application or modernizing an existing one.
Who this book is for
The book is for developers, QA engineers, and solutions architects who want to understand how application-oriented Azure services work and can be used to implement new or modernize existing applications and systems for scalability, reliability, and maintainability on the Azure platform. This includes personas such as the following:
- Software developers building Azure-based applications or looking for a way to modernize existing legacy applications
- Solutions architects looking at simplifying infrastructure management for their systems
- QA engineers who need to understand how to build automation for Azure-based services by gaining knowledge about the development of such services
What this book covers
Chapter 1, Getting Started with an Azure Account and Selecting an IDE, provides an introduction to Azure as a platform and instructions on how to set up a local environment.
Chapter 2, Choosing Between Azure CLI and Azure PowerShell, introduces you to the two most important command-line interface tools and the ways to configure them.
Chapter 3, Hosting Applications with Azure App Service, explains how to use Azure App Service as your main service for hosting web applications.
Chapter 4, Developing Static Web Applications, explores different options for hosting static web applications without the need to set up infrastructure.
Chapter 5, Going Serverless with Azure Functions, introduces serverless components and function-as-a-service using Azure Functions as the baseline for your application.
Chapter 6, Managing Secrets and Con?guration in Azure, shows how to implement best practices for storing and managing secrets and configuration using Azure Key Vault and Azure App Configuration.
Chapter 7, Integrating Services with Azure Logic Apps, explains how to leverage a low-code solution to build workflows using Azure Logic Apps.
Chapter 8, Building Workflows Using Durable Functions, follows up on the workflow-based processes implemented in Azure and introduces Durable Functions as a low-level tool for implementing advanced application scenarios.
Chapter 9, Learning About Azure Container Registry, introduces a managed container registry in Azure.
Chapter 10, Building Ad Hoc Workloads Using Azure Container Instances, guides you through using Azure Container Instances as a simple platform for running containerized workloads with minimal configuration.
Chapter 11, Developing Microservices with Azure Container Apps, provides an extensive guide on how to implement microservices architecture using Azure Container Apps and compares it with other Azure services such as Azure Kubernetes Service.
Chapter 12, Hosting Containers with Azure App Service, follows up on the previous chapters and elaborates on the use of containers in the context of Azure App Service and web applications.
Chapter 13, Storing Data with Azure Storage, introduces the capabilities of Azure Storage with the main focus on Table Storage and Blob Storage, their use cases, and their limitations.
Chapter 14, Using Queues in Microsoft Azure, provides a detailed introduction to implementing queue-based services and compares messaging solutions such as Queue Storage, Azure Event Hub, and Azure Service Bus.
Chapter 15, Using Relational Databases in Microsoft Azure, explains how relational databases can be used in Azure, the differences between databases hosted on-premises and in the cloud, and what types of relational databases are supported in Azure as managed services.
Chapter 16, Adding Monitoring to Your Application, introduces Azure Monitor, Application Insights, and Log Analytics as the main building blocks for the logging and monitoring of cloud-based services.
Chapter 17, Integrating an Application with Azure OpenAI Service, provides an extensive introduction to managed OpenAI models served by Azure and the ways of integrating them with your application.
Chapter 18, Leveraging Azure Machine Learning to Automate Machine Learning Tasks, guides you through use cases of Azure Machine Learning and automation concepts for training machine learning models for applications.
Chapter 19, Using GitHub Actions to Build and Deploy Applications to Azure, explains how to automate deployments of applications using GitHub Actions as your platform for CI/CD pipelines.
Chapter 20, Developing, Testing, and Deploying Azure Logic Apps, elaborates on the concepts presented in Chapter 7 and provides additional details on building a workflow that is testable.
To get the most out of this book
To get the most from this book, you need to understand the basics of at least one programming language such as C#, Java, Python, or JavaScript. You should also understand the basics of Azure (ideally, have the AZ-900 certification) and be proficient with the IDE of your choice and running commands in the system terminal.
Software/hardware covered in the book
Operating system requirements
Azure CLI
Windows, macOS, or Linux
Azure PowerShell
Windows, macOS, or Linux
Azurite
Windows, macOS, or Linux
Azure Storage Explorer
Windows, macOS, or Linux
Visual Studio Code
Windows, macOS, or Linux
If you are using the digital version of this book, we advise you to type the code yourself or access the code from the book's GitHub repository (a link is available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code.
Download the example code files
You can download the example code files for this book from GitHub at https://github.com/PacktPublishing/Azure-for-Developers-Third-Edition/. If there's an update to the code, it will be updated in the GitHub repository.
We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!
Conventions used
There are a number of text conventions used throughout this book.
Code in text: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and X/Twitter handles. Here is an example: "Let's perform a quick check using curl."
A block of code is set as follows:
param parLogicAppName string = 'logicapp' resource la 'Microsoft.Logic/workflows@2019-05-01' = { name: parLogicAppName location: resourceGroup().location properties: { state:
} } Any...