Stai progettando un flusso di lavoro di elaborazione degli ordini su Azure Service Bus. Tutti i messaggi per lo stesso OrderID devono essere elaborati in rigoroso ordine FIFO e devi mantenere lo stato per ordine tra i messaggi per tenere traccia della fase del flusso di lavoro. Cosa dovresti fare?
Scegli una risposta
Tocca un'opzione per controllare la tua risposta.
Risposta corretta: Abilitare RequiresSession sulla coda o sulla sottoscrizione di destinazione., Impostare il SessionId sull'OrderID per tutti i messaggi di un ordine., Ricevere messaggi con un SessionReceiver e usare GetState/SetState per persistere lo stato del flusso di lavoro per ordine..
Perché questa è la risposta
Per garantire l'elaborazione FIFO e il mantenimento dello stato per messaggi correlati, Azure Service Bus offre le sessioni di messaggio. Abilitare RequiresSession sulla coda o sottoscrizione di destinazione è fondamentale per attivare questa funzionalità. Successivamente, impostare il SessionId di tutti i messaggi appartenenti allo stesso ordine con lo stesso OrderID raggruppa logicamente questi messaggi. Infine, un SessionReceiver è necessario per ricevere i messaggi all'interno di una sessione specifica. Questo ricevitore garantisce che i messaggi vengano elaborati in ordine e consente l'uso dei metodi GetState() e SetState() per persistere e recuperare lo stato specifico della sessione (e quindi dell'ordine) direttamente all'interno di Service Bus, eliminando la necessità di un archivio stati esterno per questa logica. Le altre opzioni non garantiscono l'ordinamento FIFO per gruppo di messaggi o la gestione dello stato intrinseca.
Supera il tuo esame — senza l'infinita caccia alle risposte
Ottieni ogni domanda e spiegazione verificata per questo esame in un unico posto, e risparmia ore di preparazione. Oltre 1.000 certificazioni · Oltre 20 lingue · Inizia gratuitamente.
Supera il tuo esame più velocemente → Nessuna carta richiesta