Een worker verwerkt berichten van een Service Bus-wachtrij (QueueA). Voor elk bericht moet het een melding naar een topic (TopicB) en een commando naar een andere wachtrij (QueueC) sturen, en vervolgens het oorspronkelijke bericht voltooien. Alle drie de bewerkingen moeten samen slagen of falen. Wat moet u doen?
Kies een antwoord
Tik op een optie om je antwoord te controleren.
Correct antwoord: Voer de receive-complete op QueueA en de sends naar TopicB en QueueC uit binnen een Service Bus-transactie (TransactionScope of ServiceBusTransaction) met dezelfde ServiceBusClient-verbinding., Zorg ervoor dat QueueA, TopicB en QueueC zich in dezelfde Service Bus-namespace bevinden..
Waarom dit het antwoord is
Om te garanderen dat alle drie de bewerkingen (ontvangen van QueueA, verzenden naar TopicB, verzenden naar QueueC) atomisch slagen of falen, moeten ze worden uitgevoerd binnen een Service Bus-transactie. Dit kan met TransactionScope of ServiceBusTransaction. Het is cruciaal dat alle betrokken Service Bus-entiteiten (QueueA, TopicB, QueueC) zich in dezelfde Service Bus-namespace bevinden, omdat transacties alleen binnen één namespace werken. Bovendien moeten alle bewerkingen binnen dezelfde ServiceBusClient-verbinding worden uitgevoerd om deel uit te maken van dezelfde transactie. Afzonderlijke ServiceBusClient-instanties zouden de transactie verbreken. Dubbele detectie voorkomt herhaalde verwerking van berichten, maar garandeert geen atomiciteit van meerdere bewerkingen. Azure Functions met output bindings bieden geen atomische commits over Service Bus-entiteiten heen voor dit specifieke scenario.
Slaag voor je examen — zonder eindeloos zoeken naar antwoorden
Krijg elke geverifieerde vraag en uitleg voor dit examen op één plek, en bespaar uren voorbereiding. Meer dan 1.000 certificeringen · Meer dan 20 talen · gratis om te beginnen.
Slaag sneller voor je examen → Geen kaart nodig