2010-03-31 2 views
6

После тонны чтения в книгах и в Интернете я заметил подсказки информации о том, что WCF и MSMQ могут использоваться для достижения высокой пропускной способности. В информации, которую я видел, упоминается использование нескольких служб WCF в ферме, которая читает из одной очереди MSMQ. Проблема в том, что я нашел абзацы здесь и там, в которых упоминается, что высокая пропускная способность может быть выполнена, но я не могу найти документ о том, как ее реализовать. Ниже приведен фрагмент статьи MSDN.Баланс нагрузки WCF и обмен удаленным MSMQ для высокой пропускной способности

Следующий абзац из лучшей практики для Queued связи http://msdn.microsoft.com/en-us/library/ms731093.aspx Для достижения более высокой пропускной способности и готовности использовать ферму служб WCF, которые считывают из очереди. Это требует, чтобы все эти сервисы выставляли один и тот же контракт на одной и той же конечной точке. Подход к ферме лучше всего подходит для приложений с высокими темпами производства сообщений, поскольку он позволяет нескольким службам читать все из одной очереди.

Это то, что я пытаюсь решить. У меня есть приложение для интрасети, где клиент отправляет запрос в службу WCF. Но я хочу, чтобы возможность балансировать службы WCF на нескольких серверах в ферме. Я также хочу, чтобы эти службы WCF в ферме выполняли транзакционные чтения из удаленного MSMQ, когда элемент доступен в очереди. Если это возможно, проблема заключается в том, что я не понимаю процесс активации WCF для извлечения сообщений из удаленной очереди.

Если это возможно, кто-нибудь знает какие-либо статьи или веб-трансляции, которые могли бы объяснить это подробно?

BarDev

+0

любой образец кода, пожалуйста ?? – Kiquenet

ответ

4

Я не знаю о каких-либо статей, а как доказательство концепции, я провел несколько экземпляров существующего приложения ФОС против MSMQ.

Случалось, что если 10 сообщений, которые уже присутствуют в очереди, они обрабатывались только одним из экземпляров wcf.

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

Что вам нужно сделать, это создать единую службу ФОС работает против MSMQ, убедитесь, что его работает должным образом, а затем идти оттуда, запустив все больше и больше экземпляров службы ФОС, чтобы увидеть, что происходит

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

  • Нет связанных вопросов^_^