2009-10-09 18 views
7

Czy ktoś może mi powiedzieć, czy MSMQ (wykorzystując transakcje) wspiera konkurencyjnych konsumentów? Zasadniczo, mam wiele wątków odrywających wiadomości od pojedynczej kolejki. Chciałem tylko upewnić się, że to zadziała, ponieważ MSMQ czasami zachowuje się inaczej niż się spodziewam.Konsument konkurencyjny MSMQ

+1

Czy przeglądasz lub odbierasz wiadomości? –

+0

Otrzymuję wiadomości. –

Odpowiedz

6

Jeśli wywołujesz Odbiór z wielu procesów na tym samym komputerze w tej samej kolejce, nie otrzymasz tego samego komunikatu więcej niż raz - chyba że wycofasz transakcję z odczytu.

Jeśli korzystasz z wersji 2008/w7 i odbierasz na wielu komputerach z tej samej kolejki zdalnej w ramach transakcji, nie powinieneś widzieć tego samego komunikatu dwukrotnie (ponownie, chyba że zostanie wycofany).

Jeśli korzystasz z modułu wyliczającego, aby przejrzeć wiadomości, a następnie usunąć interesujące (przez RemoveCurrent), należy spodziewać się wyjątku, że wiadomość została już usunięta, gdy inny konsument ją wybrał.

Jeśli korzystasz z wersji 2003/XP, nie możesz wykonywać zdalnego odbioru transakcji, więc wszystkie zakłady są wyłączone.