Azure Functions ist eine serverless Compute-Lösung von Microsoft Azure, die es Entwicklern ermöglicht, event-driven Code auszuführen ohne sich um Infrastruktur kümmern zu müssen. Der Service skaliert automatisch basierend auf Last und Sie zahlen nur für tatsächliche Ausführungszeit.
Was ist Azure Functions?
Azure Functions ist Microsofts Antwort auf die wachsende Nachfrage nach serverless Computing. Der Service ermöglicht es, Code als Reaktion auf Events auszuführen, ohne Server explizit bereitzustellen oder zu verwalten. Entwickler können sich vollständig auf ihre Business-Logik konzentrieren, während Azure die komplette Infrastruktur verwaltet.
Die Plattform unterstützt eine Vielzahl von Programmiersprachen (C#, Java, JavaScript, TypeScript, Python, PowerShell) und bietet native Integration mit über 40 Azure Services durch Triggers und Bindings. Das bedeutet: Code schreiben, deployen, und Azure kümmert sich um Scaling, Hochverfügbarkeit und Betrieb.
Azure Functions ist besonders für Unternehmen interessant, die bereits im Microsoft-Ökosystem arbeiten oder Hybrid-Cloud-Szenarien betreiben. Der Service erfüllt alle relevanten Compliance-Standards (ISO 27001, SOC 2, DSGVO) und ist in deutschen bzw. europäischen Azure-Regionen verfügbar.
Ein Alleinstellungsmerkmal gegenüber Wettbewerbern: Azure Functions bietet mit Durable Functions eine einzigartige Erweiterung für stateful Workflows, die komplexe Orchestrierungen mit automatischer Zustandsverwaltung ermöglicht. Dies macht den Service ideal für langlebige Prozesse, Human-Interaction-Workflows und KI-Agent-Orchestrierung.
Hosting Plans im Vergleich
Azure Functions bietet vier verschiedene Hosting-Optionen, die sich in Skalierung, Kosten und Features unterscheiden:
| Feature | Flex Consumption | Consumption | Premium | Dedicated |
|---|---|---|---|---|
| Skalierung | Sehr schnell, elastisch | Automatisch | Pre-warmed + elastisch | Manuell |
| Cold Start | Minimal (Always-ready) | Ja (1-3 Sek) | Nein | Nein |
| Max Execution | 10 Min (default) | 10 Min (max) | Unbegrenzt | Unbegrenzt |
| Memory | Bis 4 GB | Bis 1,5 GB | Bis 14 GB | Plan-abhängig |
| VNET Support | Ja (integriert) | Nein | Ja | Ja |
| Kosten Model | Pay-per-execution | Pay-per-execution | Always-on + Execution | App Service Plan |
| Min Instances | 0 (konfigurierbar) | 0 | 1+ (konfigurierbar) | Plan-abhängig |
| Max Instances | 1000 | 200 | Unbegrenzt | Plan-abhängig |
| Best for | Moderne Apps mit Spikes | Entwicklung, Testing | Production (latency-kritisch) | Bestehende App Service Umgebungen |
| Preis (ca.) | ~ Consumption | Ab 0 EUR (Free Tier) | Ab 150 EUR/Monat | Ab 60 EUR/Monat |
Empfehlung: Für neue produktive Anwendungen sollten Sie den Flex Consumption Plan (seit 2024 GA) oder Premium Plan wählen. Der klassische Consumption Plan ist nur noch für Entwicklung/Testing empfehlenswert, da der Linux Consumption Plan im September 2028 eingestellt wird.
Durable Functions für Workflows
Durable Functions ist eine Erweiterung von Azure Functions, die stateful Workflows in einer serverlosen Umgebung ermöglicht. Im Gegensatz zu klassischen Functions, die zustandslos sind, erlauben Durable Functions:
- Stateful Orchestrierungen: Komplexe Multi-Step-Workflows mit automatischer Zustandsverwaltung
- Automatisches Checkpointing: Bei Crashes wird vom letzten erfolgreichen Schritt fortgesetzt
- Built-in Retry-Logik: Fehlertoleranz ohne manuellen Code
- Human-Interaction-Patterns: Workflows mit Timeouts und externen Events (z.B. Approval-Prozesse)
- Fan-out/Fan-in: Parallele Ausführung mehrerer Tasks mit Aggregation der Ergebnisse
Typische Durable Functions Patterns
1. Function Chaining: Sequentielle Ausführung von Functions
var x = await context.CallActivityAsync<object>("F1", null);
var y = await context.CallActivityAsync<object>("F2", x);
return await context.CallActivityAsync<object>("F3", y);2. Fan-out/Fan-in: Parallele Verarbeitung mit Aggregation
var tasks = new List<Task<int>>();
foreach (var item in workBatch) {
tasks.Add(context.CallActivityAsync<int>("ProcessItem", item));
}
await Task.WhenAll(tasks);
int sum = tasks.Sum(t => t.Result);3. Async HTTP APIs: Langlebige Operationen mit Status-Polling
4. Monitoring: Wiederkehrende Checks mit flexiblen Intervallen
5. Human Interaction: Approval-Workflows mit Timeouts und Eskalation
Durable Functions ist ideal für KI-Agents, Data-Pipelines, Approval-Workflows und alle Szenarien, die über einfache Request-Response-Patterns hinausgehen.
Typische Anwendungsfälle
Azure Functions deckt ein breites Spektrum an Use Cases ab:
1. HTTP APIs und Webhooks
Erstellen Sie RESTful APIs ohne Server-Management. Ideal für Backend-for-Frontend (BFF) Patterns, Microservices-Architekturen oder als API-Gateway-Ergänzung.
Beispiel: Validierung von Zahlungs-Webhooks von Stripe/PayPal, User-Registrierungs-APIs, OAuth-Callback-Handler.
2. Event Processing und Integration
Verarbeiten Sie Events aus Azure Services (Event Hub, Service Bus, Storage Queues) oder externen Systemen in Echtzeit.
Beispiel: Bestell-Workflows bei E-Commerce, Log-Aggregation, IoT-Telemetrie-Verarbeitung.
3. Scheduled Tasks (Cron Jobs)
Führen Sie periodische Aufgaben aus ohne dedizierte Server. Timer Trigger unterstützt Cron-Syntax.
Beispiel: Nächtliche Datenbank-Backups, Report-Generierung, Datensynchronisation zwischen Systemen.
4. File Processing
Reagieren Sie automatisch auf File-Uploads in Azure Blob Storage.
Beispiel: Bild-Resizing bei Upload, PDF-Generierung, Video-Transcoding, Dokumenten-OCR.
5. Real-time Stream Processing
Verarbeiten Sie kontinuierliche Datenströme mit hohem Durchsatz.
Beispiel: Clickstream-Analyse, Sensor-Daten-Aggregation, Fraud-Detection in Echtzeit.
6. KI und Machine Learning Inference
Integrieren Sie Azure OpenAI, Azure Foundry oder Custom ML-Modelle für AI-Workloads.
Beispiel: RAG-Chatbots, Text-Klassifizierung, Sentiment-Analyse, AI-Agents mit Durable Functions.
7. Serverless Workflows
Orchestrieren Sie komplexe Business-Prozesse mit Durable Functions.
Beispiel: Order-Fulfillment-Workflows, Onboarding-Prozesse mit Approval-Steps, Multi-Step-ETL-Pipelines.
Best Practices
1. Wählen Sie den richtigen Hosting Plan
- Entwicklung/Testing: Consumption Plan (Free Tier nutzen)
- Production (Standard): Flex Consumption oder Premium Plan
- Latency-kritisch: Premium Plan mit Always-ready Instances
- Bestehende App Service: Dedicated Plan zur Ressourcen-Optimierung
2. Vermeiden Sie lange laufende Functions
- Consumption: Max 10 Minuten Ausführungszeit (Timeout)
- Für lange Prozesse: Nutzen Sie Durable Functions mit Checkpointing
- Teilen Sie große Tasks in kleinere Activity Functions auf
3. Nutzen Sie asynchronen Code
// Gut: Async/Await verwenden
public static async Task Run([HttpTrigger] HttpRequest req)
{
var data = await GetDataAsync();
return new OkObjectResult(data);
}
// Schlecht: Blocking Calls
public static Task Run([HttpTrigger] HttpRequest req)
{
var data = GetData(); // Blockiert Thread!
return Task.FromResult(new OkObjectResult(data));
}4. Optimieren Sie Storage-Konfiguration
- Nutzen Sie separate Storage Accounts für Production-Functions
- Storage Account in derselben Region wie Function App (Latenz)
- Für Event Hub Triggers: Keine Data Lake Storage Accounts verwenden
5. Implementieren Sie Connection Pooling
Vermeiden Sie Socket-Exhaustion durch Wiederverwendung von HTTP-Clients:
private static readonly HttpClient httpClient = new HttpClient();
public static async Task Run([HttpTrigger] HttpRequest req)
{
var response = await httpClient.GetAsync("https://api.example.com");
}6. Monitoring und Observability
- Aktivieren Sie Application Insights (standardmäßig aktiviert)
- Nutzen Sie Structured Logging für bessere Auswertbarkeit
- Konfigurieren Sie Custom Metrics für Business-KPIs
- Setzen Sie Alerts für Error Rates und Performance-Degradation
7. Deployment Best Practices
- Nutzen Sie “Run from Package” für schnellere Deployments
- Setzen Sie Deployment Slots für Zero-Downtime-Deployments ein
- CI/CD mit GitHub Actions oder Azure DevOps
- Infrastructure as Code mit Bicep/Terraform
8. Security
- Nutzen Sie Managed Identities statt Connection Strings wo möglich
- Function Keys für HTTP Triggers (oder Microsoft Entra ID)
- VNET-Integration für sensible Workloads (Premium/Dedicated)
- Private Endpoints für Storage und Databases
9. Kostenoptimierung
- Setzen Sie
functionAppScaleLimitum unbegrenzte Skalierung zu vermeiden - Nutzen Sie Always-ready Instances gezielt (Premium)
- Überwachen Sie Execution Counts und Memory-Verbrauch
- Deaktivieren Sie ungenutzte Functions
10. Fehlerbehandlung und Resilienz
- Implementieren Sie Retry-Policies für transiente Fehler
- Nutzen Sie Dead-Letter-Queues für fehlgeschlagene Messages
- Setzen Sie Circuit Breaker Pattern für externe Abhängigkeiten ein
- Testen Sie Failure-Szenarien (Chaos Engineering)
Azure Functions vs. Alternativen
Bei der Wahl einer Serverless-Lösung stellt sich oft die Frage nach Alternativen:
AWS Lambda: Marktführer mit größtem Ökosystem, aber komplexere IAM-Verwaltung Google Cloud Functions: Gute Integration mit GCP, aber kleineres Feature-Set Google Cloud Run: Container-basiert, mehr Flexibilität aber weniger managed
Azure Functions punktet besonders bei:
- Unternehmen mit Microsoft-Stack (Active Directory, Office 365, Dynamics)
- Hybrid-Cloud-Szenarien (Azure Arc)
- Durable Functions für stateful Workflows (Alleinstellungsmerkmal)
- Integration mit Azure-Ökosystem (Cosmos DB, Event Hub, etc.)
Migration und Linux Consumption Plan Retirement
Wichtig: Der Azure Functions Linux Consumption Plan wird im September 2028 eingestellt. Microsoft empfiehlt die Migration zu:
- Flex Consumption Plan (empfohlen für die meisten Workloads)
- Premium Plan (für VNET-Integration und Always-ready Instances)
- Container Apps (für Container-basierte Deployments)
Die Migration sollte bis spätestens Q2 2028 erfolgen. Windows Consumption Plan ist nicht betroffen.
Häufig gestellte Fragen
Was kostet Azure Functions?
Azure Functions bietet ein nutzungsbasiertes Preismodell:
- Consumption: Erste 1 Mio. Executions + 400.000 GB-s gratis pro Monat
- Premium: Ab ca. 150 EUR/Monat für EP1 Plan (1 vCore, 3,5 GB RAM)
- Dedicated: Abhängig vom App Service Plan (ab ca. 60 EUR/Monat für B1)
Detaillierte Kosten im Azure Pricing Calculator berechnen.
Ist Azure Functions DSGVO-konform?
Ja, Azure Functions kann DSGVO-konform betrieben werden bei Wahl europäischer Regionen (z.B. Germany West Central, West Europe). Microsoft bietet Datenschutz-Zusatzvereinbarungen (DPA) und erfüllt ISO 27001, SOC 2 und weitere Standards.
Wie integriert sich Azure Functions mit anderen Azure Services?
Azure Functions bietet Bindings für über 40 Services: Cosmos DB, Event Hub, Service Bus, Blob Storage, SQL Database, SignalR, SendGrid, etc. Bindings eliminieren Boilerplate-Code für Authentifizierung und Connection-Management.
Welche SLAs bietet Azure Functions?
- Consumption Plan: Keine SLA (Best Effort)
- Flex Consumption Plan: 99,95% SLA
- Premium Plan: 99,95% SLA
- Dedicated Plan: 99,95% SLA (abhängig vom App Service Plan)
Kann ich Azure Functions in Hybrid-Cloud-Szenarien nutzen?
Ja, über Azure Arc können Functions auch on-premises oder in anderen Clouds betrieben werden. Zudem unterstützen Premium und Dedicated Plans VNET-Integration für Hybrid-Connectivity via ExpressRoute.
Integration mit innFactory
Als Microsoft Solutions Partner unterstützt innFactory Sie bei:
- Architektur-Beratung: Wahl des richtigen Hosting Plans und Patterns
- Migration: Von monolithischen Apps oder anderen Cloud-Providern
- Development: Entwicklung von Functions-basierten Lösungen
- DevOps: CI/CD, Infrastructure as Code, Monitoring-Setup
- Kostenoptimierung: Analyse und Optimierung von Function-Kosten
- KI-Integration: Azure OpenAI, Azure Foundry, Custom ML-Modelle
Kontaktieren Sie uns für eine unverbindliche Beratung zu Azure Functions und Serverless-Architekturen.
Verfügbare Varianten & Optionen
Flex Consumption Plan (neu)
- Schnellste elastische Skalierung
- Private Networking integriert
- Always-ready Instances
- Hohe Concurrency-Kontrolle
- Relativ neu (seit 2024)
Consumption Plan
- True Pay-per-Execution
- Automatische Skalierung
- Keine Kosten im Idle
- 1 Mio. Ausführungen gratis pro Monat
- Cold Start Latency
- Max 10 Min Ausführungszeit
- Limitierte Memory (1,5 GB)
Premium Plan
- Keine Cold Starts (Pre-warmed)
- VNET Connectivity
- Unbegrenzte Ausführungszeit
- Mehr CPU/RAM
- Kosten für Always-on Instances
- Höhere Kosten als Consumption
Dedicated (App Service) Plan
- Vorhersehbare Kosten
- Nutzung vorhandener App Service Pläne
- Volle Kontrolle über Ressourcen
- Keine automatische Skalierung über Plan hinaus
- Manuelle Skalierung erforderlich
Typische Anwendungsfälle
Technische Spezifikationen
Häufig gestellte Fragen
Was ist der Unterschied zwischen Consumption und Flex Consumption Plan?
Der Flex Consumption Plan ist die neueste Generation und bietet schnellere Skalierung, integriertes Private Networking und Always-ready Instances ohne Cold Starts. Der klassische Consumption Plan ist günstiger, hat aber Cold Starts und wird 2028 für Linux eingestellt.
Wann sollte ich Premium statt Consumption wählen?
Premium eignet sich für produktive Workloads mit niedrigen Latenzanforderungen (keine Cold Starts), VNET-Integration, längere Ausführungszeiten (über 10 Min.) oder wenn Sie mehr CPU/RAM benötigen.
Kann ich Docker Container verwenden?
Ja, auf Premium und Dedicated Plans können Sie Custom Containers verwenden. Dies ermöglicht volle Kontrolle über Runtime und Dependencies.
Was sind Durable Functions?
Durable Functions ist eine Erweiterung für stateful Workflows in einer serverlosen Umgebung. Sie ermöglicht komplexe Orchestrierungen mit automatischen Checkpoints, Retry-Logik und Human-Interaction-Patterns.
Wie funktioniert die Skalierung?
Azure Functions skaliert automatisch basierend auf der Anzahl eingehender Events. Bei Consumption/Flex werden neue Instances bei Bedarf gestartet, bei Premium sind immer Pre-warmed Instances verfügbar.
Welche Sprachen werden unterstützt?
Vollständig: C#, Java, JavaScript, TypeScript, Python, PowerShell. Via Custom Handlers auch Rust, Go und andere Sprachen möglich.
Was kostet Azure Functions?
Consumption: Pay-per-Execution (1 Mio. Executions + 400.000 GB-s gratis/Monat). Premium: Ab ca. 150 EUR/Monat für EP1 Plan. Dedicated: Abhängig vom gewählten App Service Plan.
Kann ich Azure Functions für KI-Workloads nutzen?
Ja, ideal für LLM-Integration, RAG-Patterns, AI Agents mit Durable Functions, und Integration mit Azure OpenAI Service, Azure Foundry oder anderen AI-Services.
Wie überwache ich meine Functions?
Azure Functions integriert nativ mit Application Insights für Monitoring, Tracing und Performance-Analyse. Azure Monitor bietet zusätzliche Metriken und Alerting.
Gibt es Einschränkungen bei der Ausführungszeit?
Consumption Plan: Max 10 Minuten (konfigurierbar auf 5 Min default). Premium und Dedicated: Unbegrenzt. Für lange Workflows empfehlen sich Durable Functions.
