Kommentar
Å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.
Azure tillhandahåller flera tjänster för att leverera händelser och meddelanden i en lösning. Varje tjänst riktar in sig på olika scenarier, från reaktiv händelseroutning till direktuppspelning med högt dataflöde till transaktionsmeddelanden i företagsklass.
I den här artikeln jämförs följande tjänster:
Välj en kandidattjänst
Det här avsnittet hjälper dig att välja de mest sannolika tjänsterna för dina behov.
Använd följande tabell för att snabbt begränsa vilken tjänst som passar ditt scenario:
| Criterion | Event Grid (händelsenätverk) | Event Hubs | Tjänstebuss |
|---|---|---|---|
| Primärt syfte | Reaktiv routning av händelser | Stordataströmning och inmatning | Transaktionsmeddelanden för företag |
| Datamodell | Händelser (diskreta meddelanden) | Händelseströmmar (tidsordnade serier) | Meddelanden (nyttolaster med högt värde) |
| Leveransgaranti | Minst en gång | Minst en gång | Minst en gång (valfritt i ordning, exakt en gång för sessioner) |
| När det bör användas | Reagera på statusändringar, serverlösa arkitekturer | Telemetri, distribuerad dataströmning, realtidsanalys | Orderbearbetning, finansiella transaktioner, arbetsflöden |
Resultatet av det här avsnittet är en utgångspunkt för övervägande. Använd följande avsnitt för att utföra en detaljerad utvärdering av tjänsterna.
Händelser jämfört med meddelanden i Azure meddelandetjänster
Det finns en viktig skillnad mellan Azure tjänster som levererar en händelse och tjänster som levererar ett meddelande.
Händelse: Ett enkelt meddelande om en villkors- eller tillståndsändring. Utgivaren har inga förväntningar på hur händelsen hanteras. Händelser kan vara diskreta (rapportera en tillståndsändring som kan åtgärdas) eller en del av en tidsbeställd serie (rapportera ett villkor som kan analyseras). Diskreta händelser är idealiska för serverlösa lösningar som behöver vara skalbara.
Meddelande: Rådata som skapas av en tjänst som ska användas eller lagras någon annanstans. De data som utlöste processkedjan finns i meddelandet. Det finns ett kontrakt mellan utgivare och konsument. Utgivaren skickar till exempel ett meddelande med rådata och förväntar sig att konsumenten skapar en fil från dessa data och skickar ett svar när arbetet är klart.
Skalbarhet och dataflöde
I följande tabell jämförs hur Azure Event Grid, Azure Event Hubs och Azure Service Bus hanterar skalbarhet och dataflöde.
| Criterion | Event Grid (händelsenätverk) | Event Hubs | Tjänstebuss |
|---|---|---|---|
| Genomströmning | Dynamiskt skalbar, serverlös | Miljontals händelser per sekund | Tillförlitlig asynkron leverans |
| Modell för svarstid | Leverans av händelser i nästan realtid | Strömning med låg latens | Förmedlad via meddelandeförmedlare med valfri långpollning |
| Skalningsmodell | Automatisk (serverlös) | Dataflödesenheter/bearbetningsenheter | Meddelandeenheter (Premium) |
Meddelandefunktioner
I följande tabell jämförs meddelandefunktionerna i Azure Event Grid, Azure Event Hubs och Azure Service Bus.
| Criterion | Event Grid (händelsenätverk) | Event Hubs | Tjänstebuss |
|---|---|---|---|
| Protocol | MQTT, HTTP | AMQP, Kafka, HTTP | AMQP, HTTP |
| Pub/Sub | Ja (publicera-prenumerera) | Ja (konsumentgrupper) | Ja (ämnen och prenumerationer) |
| Beställning | Ingen garanti | Per partition | FIFO (sessioner) |
| Transactions | Nej | Nej | Yes |
| Dubblettidentifiering | Nej | Nej | Yes |
| Dead-lettering | Yes | Nej | Yes |
| Batchbearbetning | Yes | Ja (händelsebatch) | Ja (sessioner) |
| Spela in / spela upp | Nej | Ja (Event Hubs Capture) | Nej |
Integrering och distribution
I följande tabell jämförs integrerings- och distributionsalternativ för Azure Event Grid, Azure Event Hubs och Azure Service Bus.
| Criterion | Event Grid (händelsenätverk) | Event Hubs | Tjänstebuss |
|---|---|---|---|
| Azure integrering av tjänster | Djupgående integrering med Azure tjänster och tjänster från tredje part | Infrastrukturer och analystjänster för dataströmbearbetning | Företagsprogram, hybridmoln, lokal anslutning |
| Versioner | Azure Event Grid (PaaS), Event Grid på Kubernetes med Azure Arc | Standard, Premium, Dedikerad | Grundläggande, Standard, Premium |
Använda Event Grid, Event Hubs och Service Bus tillsammans
I vissa fall kan du använda tjänsterna sida vid sida för att uppfylla olika roller. En e-handelswebbplats kan till exempel använda Service Bus för att bearbeta beställningar, Event Hubs för att samla in webbplatstelemetri och Event Grid för att svara på händelser som ett objekt som levereras.
I andra fall kan du koppla ihop dem för att skapa en händelse och datapipeline. Du använder Event Grid till att svara på händelser i de andra tjänsterna. Ett exempel på hur du använder Event Grid med Event Hubs för att migrera data till Azure Synapse Analytics finns i Strömma stordata till Azure Synapse Analytics. Följande bild visar arbetsflödet för att strömma datan.