liveBook · Manning

Azure Function App

As explained in Microsoft Azure in Action

An Azure Function App is an Azure hosting container that groups one or more Azure Functions with a shared runtime environment and configuration.

An Azure Function App is the Azure home for one or more Azure Functions. Each function handles a focused task; the app hosts them and provides a place to manage their runtime and configuration. Think of it loosely as the computer running your functions—except Azure handles the underlying infrastructure. That is the practical meaning of “serverless,” not a promise that servers have vanished. section 2.2.14 section 2.2.17

Give uploaded photos a job

In a photo-upload workflow, images arrive in Blob Storage and a function handles image resizing. Create the Function App first, then add a function using the Blob Storage trigger template. Set its path to `imagecontainer/{name}`: the trigger watches that container, and `{name}` identifies the incoming file. A newly created function only logs inserted files until you add the processing work. section 2.2.14 section 2.2.18

To set up the hosting app in the Azure Portal:

  • Find Function App, select Add, and choose a hosting plan. Consumption is the option used in this workflow; Consumption, Premium, and an Azure App Service plan are other hosting choices with different trade-offs. section 2.2.16 section 8.6
  • Choose the subscription, resource group, name, runtime, version, and region. The photo example uses .NET 8 LTS with the isolated worker model. An app name must be unique because it forms part of the app’s public URL. section 2.2.16 section 2.2.17
  • Connect a storage account, preferably in the same region. The app uses storage for such things as trigger and binding metadata, code, and logs; keeping it nearby reduces latency. Enable Application Insights for monitoring, then review and create the app. section 2.2.16 section 2.2.17

For repeatable setup, `az functionapp create` offers a CLI alternative: supply an app name, storage account, resource group, Consumption-plan location, and Functions version. The app’s `host.json` holds settings that affect all its functions, while `local.settings.json` holds local-development settings that are not deployed to Azure. In short, the app is more than a folder for code. section 8.2

The app is also an integration boundary worth checking. Import a Function App into API Management and every function inside it becomes an API endpoint through that integration template—not just the one you had in mind. If a function cannot reach its expected blob containers, inspect the app’s `AzureWebJobsStorage` setting to identify the linked storage account. section 8.4.4

How Microsoft Azure in Action covers it

How deep it goes
Walks through portal and CLI creation, storage, monitoring, and configuration without detailing underlying infrastructure.
Examples
Uses a photo-resizing workflow, a Blob Storage trigger path, and an Azure CLI creation command.
What it assumes
Defines serverless and the app-container relationship while introducing portal setup; CLI use builds on familiarity with Azure resources.
What you can do after
Build it from scratch with the Azure Portal or CLI, then configure storage and monitoring for its functions.
How it connects
Connects Azure Functions to Blob Storage triggers, Application Insights, API Management, and hosting plans.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Microsoft Azure in Action. The section links point to the parts of the book it draws on.