Lösningsidéer
I den här artikeln beskrivs en lösningsidé. Molnarkitekten kan använda den här vägledningen för att visualisera huvudkomponenterna för en typisk implementering av den här arkitekturen. Använd den här artikeln som utgångspunkt för att utforma en välkonstruerad lösning som överensstämmer med arbetsbelastningens specifika krav.
Den här artikeln beskriver en variant av en serverlös händelsedriven arkitektur som körs på Azure Kubernetes Service (AKS) med KEDA-skalning. Lösningen matar in en dataström, bearbetar data och skriver sedan resultatet till en serverdelsdatabas.
Arkitektur
Ladda ned en Visio-fil med den här arkitekturen.
Dataflöde
- AKS med KEDA-skalning används för automatisk skalning av Azure Functions-containrar baserat på antalet händelser som behöver bearbetas.
- Händelser kommer till händelsehubben för indata.
- Azure-funktionen De-batching och Filtering utlöses för att hantera händelsen. Det här steget filtrerar bort oönskade händelser och av batchar de mottagna händelserna innan de skickas till utdatahändelsehubben.
- Om Azure-funktionen För batchbearbetning och filtrering inte kan lagra händelsen skickas händelsen till Deadletter Event Hub 1.
- Händelser som anländer till händelsehubben för utdata utlöser Den transformerande Azure-funktionen. Den här Azure-funktionen omvandlar händelsen till ett meddelande för Azure Cosmos DB-instansen.
- Händelsen lagras i en Azure Cosmos DB-databas.
Komponenter
- Azure Kubernetes Service (AKS) förenklar distributionen av ett hanterat Kubernetes-kluster i Azure genom att avlasta driftkostnaderna till Azure. Som värdbaserad Kubernetes-tjänst hanterar Azure viktiga uppgifter, till exempel hälsoövervakning och underhåll.
- KEDA är en händelsedriven autoskalning som används för att skala containrar i Kubernetes-klustret baserat på antalet händelser som behöver bearbetas.
- Event Hubs matar in dataströmmen. Event Hubs är utformat för dataströmningsscenarier med högt dataflöde.
- Azure Functions är ett serverlöst beräkningsalternativ. Den använder en händelsedriven modell, där en koddel (en funktion) anropas av en utlösare.
- Azure Cosmos DB är en databastjänst med flera modeller som är tillgänglig i ett serverlöst, förbrukningsbaserat läge. I det här scenariot lagrar händelsebearbetningsfunktionen JSON-poster med hjälp av Azure Cosmos DB för NoSQL.
Kommentar
För IoT-scenarier (Internet of Thing) rekommenderar vi Azure IoT Hub. IoT Hub har en inbyggd slutpunkt som är kompatibel med Azure Event Hubs-API:et, så du kan använda någon av tjänsterna i den här arkitekturen utan större ändringar i serverdelsbearbetningen. Mer information finns i Ansluta IoT-enheter till Azure: IoT Hub och Event Hubs.
Information om scenario
Den här artikeln beskriver en serverlös händelsedriven arkitektur som körs på AKS med KEDA-skalning. Lösningen matar in en dataström, bearbetar data och skriver sedan resultatet till en serverdelsdatabas.
Mer information om grundläggande begrepp, överväganden och metoder för serverlös händelsebearbetning finns i referensarkitekturen för serverlös händelsebearbetning .
Potentiellt användningsfall
Ett populärt användningsfall för att implementera ett bearbetningsmönster för händelseströmmen från slutpunkt till slutpunkt inkluderar event hubs-tjänsten för strömningsinmatning för att ta emot och bearbeta händelser per sekund med hjälp av en de-batching- och transformeringslogik implementerad med mycket skalbara, händelsehubbutlösta funktioner.
Deltagare
Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.
Huvudförfattare:
- Rajasa Savant | Senior Software Development Engineer
Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.
Nästa steg
- Introduktion till Azure Kubernetes Service
- Dokumentation om Azure Event Hubs
- Introduktion till Azure Functions
- Azure Functions-dokumentation
- Översikt över Azure Cosmos DB
- Välj ett API i Azure Cosmos DB
Relaterade resurser
- Serverlös händelsebearbetning är en referensarkitektur som beskriver en typisk arkitektur av den här typen, med kodexempel och diskussion om viktiga överväganden.
- Övervakning av serverlös händelsebearbetning ger en översikt och vägledning om övervakning av serverlösa händelsedrivna arkitekturer som den här.
- Scenario med privat länk i händelseströmbearbetning är en lösningsidé för att implementera en liknande arkitektur i ett virtuellt nätverk med privata slutpunkter för att förbättra säkerheten.