Azure Service Bus üzerinde bir sipariş işleme iş akışı tasarlıyorsunuz. Aynı OrderID'ye sahip tüm mesajların katı FIFO sırasına göre işlenmesi ve iş akışı aşamasını izlemek için mesajlar arasında sipariş başına durumu korumanız gerekiyor. Ne yapmalısınız?
Bir cevap seçin
Cevabınızı kontrol etmek için bir seçeneğe dokunun.
Doğru cevap: Hedef kuyrukta veya abonelikte RequiresSession'ı etkinleştirin., Bir siparişteki tüm mesajlar için SessionId'yi OrderID olarak ayarlayın., Mesajları bir SessionReceiver ile alın ve sipariş başına iş akışı durumunu kalıcı hale getirmek için GetState/SetState kullanın..
Neden bu cevap
Azure Service Bus'ta katı FIFO (İlk Giren İlk Çıkar) sırasını ve sipariş bazında durumu korumak için oturumlar (sessions) kullanılır. 1. Hedef kuyrukta veya abonelikte RequiresSession'ı etkinleştirin: Bu, Service Bus'a bu kuyruk veya abonelikteki mesajların oturum bağlamında işlenmesi gerektiğini bildirir. Oturumlar etkinleştirilmeden diğer adımlar işe yaramaz. 2. Bir siparişteki tüm mesajlar için SessionId'yi OrderID olarak ayarlayın: Aynı OrderID'ye sahip tüm mesajların aynı oturuma ait olduğunu belirtir. Service Bus, aynı SessionId'ye sahip mesajların sırasını garanti eder. 3. Mesajları bir SessionReceiver ile alın ve sipariş başına iş akışı durumunu kalıcı hale getirmek için GetState/SetState kullanın: SessionReceiver, belirli bir oturuma kilitlenerek o oturumdaki mesajları sırayla almanızı sağlar. GetState ve SetState yöntemleri, oturum bazında durum verilerini depolayarak her siparişin iş akışı aşamasını izlemenize olanak tanır. Diğer seçenekler neden yanlış: MessageId'yi OrderID olarak ayarlamak, mesajların sırasını garanti etmez; MessageId bir mesajın benzersiz tanımlayıcısıdır. Mesaj ertelemesi (message deferral), belirli bir mesajı geçici olarak kuyruktan kaldırıp daha sonra işlemek için kullanılır, FIFO sırasını korumak için doğrudan bir mekanizma değildir.
Sonsuz cevap arayışı olmadan sınavınızı geçin
Bu sınav için her doğrulanmış soruyu ve açıklamayı tek bir yerde edinin ve saatlerce süren hazırlıktan tasarruf edin. 1.000'den fazla sertifika · 20'den fazla dil · ücretsiz başlayın.
Sınavınızı daha hızlı geçin → Kart gerekmez