MSMQ конкурирующий потребитель

Я нахожу шаблон MVC действительно полезным для изоляции образцовой логики, которая может, чем быть снова использованной или продолжила работать без слишком большой проблемы. Это также помогает разъединению Ваших классов и делает поблочное тестирование легче. Я записал об этом недавно (да, бесстыдный разъем здесь...)

кроме того, я недавно использовал шаблон "фабрика" от базового класса, чтобы генерировать и возвратить надлежащий класс DataContext, в котором я нуждался на лету, с помощью LINQ.

Bridges используется при попытке при попытке склеить две различных технологии (как Какао и Ruby на Mac, например)

я нахожу, однако, что каждый раз, когда я реализую шаблон, это - потому что я знал об этом перед рукой. Некоторая дополнительная мысль обычно входит в него, поскольку я нахожу, что должен изменить исходный шаблон немного для размещения моих потребностей.

просто необходимо быть осторожными для не становления и астронавт архитектуры !

7
задан HH. 9 October 2009 в 20:41
поделиться

1 ответ

If you are calling Receive from multiple processes on the same machine on the same queue, you will not get the same message more than once -- unless you rollback a transaction from a read.

If you are using 2008/w7 and are receiving on multiple machines from the same remote queue within a transaction, you should not see the same message twice (again, unless you roll back).

If you are using an enumerator to peek the messages and then remove an interesting one (via RemoveCurrent), you should expect to see an exception that the message has already been removed if another consumer has picked it up.

If you are on 2003/XP, you cannot do remote receives in a transaction so all bets are off there.

6
ответ дан 7 December 2019 в 10:04
поделиться