2012-04-20 5 views
1

Новое в MSMQ и WCF. Я хочу иметь возможность обрабатывать входящие сообщения MSMQ с высокой скоростью. Я хочу сделать его многопоточным (и транзакционным). Каков наилучший способ сделать это? Любые примеры, фрагменты кода, теории очень приветствуются. Также, как WCF может узнать, есть ли сообщение в MSMQ? Или мне нужно создать службу Windows, которая опросит MSMQ, затем для найденных сообщений, запустит ее в новом потоке и вызовет службу WCF и передаст ей сообщение? Каков наилучший способ?Потребление MSMQ с WCF

Большое спасибо

ответ

0

Ответ здесь должен был использовать WCF и создать контракт данных услуг известных типов. Эти известные типы являются объектами, которые он ожидал бы от считываемой очереди.

Чтобы сделать это поддерживает многопоточность и транзакционные, не только делает очередь должны быть транзакционными, но и декорировать атрибут службы:

[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.PerSession, ReleaseServiceInstanceOnTransactionComplete = false)]  

InstanceContextMode IS perSession по умолчанию.

вам также нужно настроить привязки на ваш конфигурационный файл

пример: http://msdn.microsoft.com/en-us/library/ms751493.aspx

Смежные вопросы