Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ofta skapar du system som reagerar på en rad kritiska händelser. Oavsett om du skapar ett webb-API, svarar på databasändringar eller bearbetar händelseströmmar eller meddelanden kan du använda Azure Functions för att implementera dessa system.
I många fall integreras en funktion med en matris med molntjänster för att tillhandahålla funktionsrika implementeringar. Följande lista visar vanliga (men inte alls uttömmande) scenarier för Azure Functions.
Välj ditt utvecklingsspråk överst i artikeln.
Bearbeta filuppladdningar
Du kan använda funktioner på flera sätt för att bearbeta filer in i eller ut ur en bloblagringscontainer. För att lära dig mer om alternativ för att trigga på en blobcontainer, se Arbeta med blobar i dokumentationen om bästa praxis.
I en detaljhandelslösning kan till exempel ett partnersystem skicka produktkataloginformation som filer till bloblagring. Du kan använda en blobb-utlöst funktion för att verifiera, transformera och bearbeta filerna för införande i huvudsystemet när du laddar upp dem.
I följande handledningar används en blob-utlösare (Event Grid-baserad) för att bearbeta filer i en blobcontainer.
Använd till exempel "blob trigger" med en händelseprenumeration på blobcontainrar:
[FunctionName("ProcessCatalogData")]
public static async Task Run([BlobTrigger("catalog-uploads/{name}", Source = BlobTriggerSource.EventGrid, Connection = "<NAMED_STORAGE_CONNECTION>")] Stream myCatalogData, string name, ILogger log)
{
log.LogInformation($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myCatalogData.Length} Bytes");
using (var reader = new StreamReader(myCatalogData))
{
var catalogEntry = await reader.ReadLineAsync();
while(catalogEntry !=null)
{
// Process the catalog entry
// ...
catalogEntry = await reader.ReadLineAsync();
}
}
}
- Snabbstart: Svara på bloblagringshändelser med hjälp av Azure Functions
- Exempel: Blobutlösare med snabbstartsexemplet för Event Grid-källtypen)
- Självstudie (händelser): Utlösa Azure Functions på blobcontainrar med en händelseprenumeration
- Självstudie (pollning): Ladda upp och analysera en fil med Azure Functions och Blob Storage
- Snabbstart: Svara på bloblagringshändelser med hjälp av Azure Functions
- Exempel: Blobutlösare med snabbstartsexemplet för Event Grid-källtypen)
- Handledning (händelser): Utlösa Azure Functions för blobcontainrar med en händelseprenumeration
- Handledning (pollning): Ladda upp och analysera en fil med hjälp av Azure Functions och Blob Storage
Realtidsström och händelsebearbetning
Molnprogram, IoT-enheter och nätverksenheter genererar och samlar in en stor mängd telemetri. Azure Functions kan bearbeta dessa data nästan i realtid som den frekventa sökvägen och sedan lagra dem i Azure Cosmos DB för användning på en instrumentpanel för analys.
Dina funktioner kan också använda händelseutlösare med låg latens, till exempel Event Grid, och realtidsutdata som SignalR för att bearbeta data nästan i realtid.
Du kan till exempel använda trigger för händelsehubbar för att läsa från en händelsehubb och utdatabindningen för att skriva till en händelsehubb efter att ha delat upp och transformerat händelserna:
[FunctionName("ProcessorFunction")]
public static async Task Run(
[EventHubTrigger(
"%Input_EH_Name%",
Connection = "InputEventHubConnectionSetting",
ConsumerGroup = "%Input_EH_ConsumerGroup%")] EventData[] inputMessages,
[EventHub(
"%Output_EH_Name%",
Connection = "OutputEventHubConnectionSetting")] IAsyncCollector<SensorDataRecord> outputMessages,
PartitionContext partitionContext,
ILogger log)
{
var debatcher = new Debatcher(log);
var debatchedMessages = await debatcher.Debatch(inputMessages, partitionContext.PartitionId);
var xformer = new Transformer(log);
await xformer.Transform(debatchedMessages, partitionContext.PartitionId, outputMessages);
}
- Strömma i stor skala med Azure Event Hubs, Functions och Azure SQL
- Strömma i stor skala med Azure Event Hubs, Functions och Cosmos DB
- Strömning i stor skala med Azure Event Hubs med Kafka-producenten, Funktioner med Kafka-trigger och Cosmos DB
- Strömma i stor skala med Azure IoT Hub, Functions och Azure SQL
- Azure Event Hubs-utlösare för Azure Functions
- Apache Kafka-utlösare för Azure Functions
Maskininlärning och AI
Azure Functions tillhandahåller serverlösa beräkningsresurser som integreras med AI- och Azure-tjänster för att effektivisera skapandet av molnbaserade intelligenta program. Du kan använda programmeringsmodellen Functions för att skapa och vara värd för MCP-servrar (Remote Model Content Protocol) och implementera olika AI-verktyg. Mer information finns i Verktyg och MCP-servrar.
Med Azure OpenAI-bindningstillägget kan du integrera AI-funktioner och beteenden för Azure OpenAI-tjänsten, till exempel hämtningsförhöjd generering (RAG) i dina funktionskodkörningar. Mer information finns i Hämtningsförhöjd generering.
En funktion kan också anropa en TensorFlow-modell eller Azure AI-tjänster för att bearbeta och klassificera en ström av bilder.
- Snabbstart: Skapa en anpassad MCP-fjärrserver med Hjälp av Azure Functions
- Snabbstart: Värdservrar som skapats med MCP SDK:er på Azure Functions
- Exempel: Komma igång med fjärr-MCP-servrar med Hjälp av Azure Functions
- Exempel: Värd för fjärranslutna MCP-servrar som skapats med officiella MCP-SDK:er på Azure Functions
- Snabbstart: Skapa en anpassad MCP-fjärrserver med Hjälp av Azure Functions
- Snabbstart: Värdservrar som skapats med MCP SDK:er på Azure Functions
- Exempel: Komma igång med fjärr-MCP-servrar med Hjälp av Azure Functions
- Exempel: Värd för fjärranslutna MCP-servrar som skapats med officiella MCP-SDK:er på Azure Functions
Mer information finns i Använda AI-verktyg och modeller i Azure Functions.
Köra schemalagda aktiviteter
Med Functions kan du köra koden baserat på ett cron-schema som du definierar.
Se Skapa en funktion i Azure-portalen som körs enligt ett schema.
Du kan till exempel analysera en kunddatabas för finansiella tjänster för duplicerade poster var 15:e minut för att undvika att flera meddelanden skickas till samma kund.
Exempel finns i följande kodfragment:
[FunctionName("TimerTriggerCSharp")]
public static void Run([TimerTrigger("0 */15 * * * *")]TimerInfo myTimer, ILogger log)
{
if (myTimer.IsPastDue)
{
log.LogInformation("Timer is running late!");
}
log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}");
// Perform the database deduplication
}
Skapa ett skalbart webb-API
En HTTP-triggad funktion definierar en HTTP-slutpunkt. Dessa slutpunkter kör funktionskod som kan ansluta till andra tjänster direkt eller med hjälp av bindningstillägg. Du kan skapa slutpunkterna i ett webbaserat API.
Du kan också använda en HTTP-utlöst funktionsslutpunkt som en webhook-integrering, till exempel GitHub-webhooks. På så sätt kan du skapa funktioner som bearbetar data från GitHub-händelser. Mer information finns i Övervaka GitHub-händelser med hjälp av en webhook med Azure Functions.
Exempel finns i följande kodfragment:
[FunctionName("InsertName")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequest req,
[CosmosDB(
databaseName: "my-database",
collectionName: "my-container",
ConnectionStringSetting = "CosmosDbConnectionString")]IAsyncCollector<dynamic> documentsOut,
ILogger log)
{
string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
dynamic data = JsonConvert.DeserializeObject(requestBody);
string name = data?.name;
if (name == null)
{
return new BadRequestObjectResult("Please pass a name in the request body json");
}
// Add a JSON document to the output container.
await documentsOut.AddAsync(new
{
// create a random ID
id = System.Guid.NewGuid().ToString(),
name = name
});
return new OkResult();
}
- Snabbstart: Http-utlösare för Azure Functions
- Artikel: Skapa serverlösa API:er i Visual Studio med hjälp av Azure Functions- och API Management-integrering
- Utbildning: Exponera flera funktionsappar som ett konsekvent API med hjälp av Azure API Management
- Exempel: Webbprogram med ett C#-API och Azure SQL DB på Static Web Apps and Functions
Skapa ett serverlöst arbetsflöde
Funktioner fungerar ofta som beräkningskomponent i en serverlös arbetsflödestopologi, till exempel ett Logic Apps-arbetsflöde. Du kan också skapa långvariga orkestreringar med tillägget Durable Functions. Mer information finns i översikten över Durable Functions.
Svara på databasändringar
Vissa processer måste logga, granska eller utföra andra åtgärder när lagrade data ändras. Funktionsutlösare är ett bra sätt att meddelas om dataändringar för att initiera en sådan åtgärd.
Tänk på följande exempel:
Exempel: Azure Functions med Azure Cosmos DB-utlösare
Skapa tillförlitliga meddelandesystem
Du kan använda Functions med Azure-meddelandetjänster för att skapa avancerade händelsedrivna meddelandelösningar.
Du kan till exempel använda utlösare i Azure Storage-köer som ett sätt att länka samman en serie funktionskörningar. Eller använd Service Bus-köer och utlösare för ett onlinebeställningssystem.
De här artiklarna visar hur du skriver utdata till en lagringskö:
De här artiklarna visar hur du utlöser från en Azure Service Bus-kö eller ett ämne.