Välj en lösning för meddelandekö
Lagringsköer och Service Bus-köer har en något annorlunda funktionsuppsättning. Du kan välja antingen en eller båda, beroende på behoven för din specifika lösning.
När du fastställer vilken köteknik som passar syftet med en viss lösning bör lösningsarkitekter och utvecklare överväga dessa rekommendationer.
Överväg att använda Service Bus-köer
Som lösningsarkitekt/-utvecklare bör du överväga att använda Service Bus-köer när:
- Din lösning måste ta emot meddelanden utan att behöva avsöka kön. Med Service Bus kan du uppnå det genom att använda en lång avsökningsåtgärd med hjälp av TCP-baserade protokoll som Service Bus stöder.
- Din lösning kräver att kön tillhandahåller en garanterad fifo-orderleverans (first-in-first-out).
- Din lösning måste ha stöd för automatisk dubblettidentifiering.
- Du vill att programmet ska bearbeta meddelanden som parallella långvariga strömmar (meddelanden är associerade med en ström med hjälp av sessions-ID-egenskapen i meddelandet). I den här modellen konkurrerar varje nod i det förbrukande programmet om strömmar, i stället för meddelanden. När en dataström ges till en förbrukande nod kan noden undersöka tillståndet för programströmstillståndet med hjälp av transaktioner.
- Din lösning kräver transaktionsbeteende och atomicitet när du skickar eller tar emot flera meddelanden från en kö.
- Ditt program hanterar meddelanden som kan överskrida 64 KB men som sannolikt inte närmar sig gränsen på 256 KB eller 1 MB, beroende på den valda tjänstnivån (även om Service Bus-köer kan hantera meddelanden upp till 100 MB).
- Du hanterar ett krav på att tillhandahålla en rollbaserad åtkomstmodell till köerna och olika rättigheter/behörigheter för avsändare och mottagare.
Överväg att använda lagringsköer
Som lösningsarkitekt/-utvecklare bör du överväga att använda lagringsköer när:
- Programmet måste lagra över 80 gigabyte meddelanden i en kö.
- Programmet vill spåra förloppet för bearbetning av ett meddelande i kön. Det är användbart om arbetaren som bearbetar ett meddelande kraschar. En annan arbetare kan sedan använda den informationen för att fortsätta där den tidigare arbetaren slutade.
- Du behöver loggar på serversidan för alla transaktioner som körs mot dina köer.