2011-12-22 3 views
1

У меня есть WPF-решение, которое также должно поддерживать прием сообщений из Queue1 и отправку сообщений в Queue2. Я установил все это, и он работал на ранних тестах.Как я могу обрабатывать несколько проектов NServiceBus?

Но когда я объединил входные и выходные проекты (так у меня есть и проекты сборки в папке вывода), я получаю следующее сообщение об ошибке:

Host doesn't support hosting of multiple endpoints. Endpoint classes found: MySolution.Queue1.EndpointConfig, MyProject.Queue1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null,

MySolution.Queue2.EndpointConfig, MyProject.Queue2, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null You may have some old assemblies in your runtime directory.

Try right-clicking your VS project, and selecting 'Clean'.

я буду об этом неправильно? Может ли мой процесс WPF работать только с одной очередью? (Не кажется слишком надежным, если это так.)

Возможно, я собираюсь сделать это неправильно. Должен ли я просто отправлять и получать из одной очереди? (Это нормально работает? Может ли очередь иметь дело с несколькими типами сообщений?)

+0

«Может ли очередь иметь дело с несколькими типами сообщений?» Единственным ограничением типа для MSMQ являются транзакционные сообщения в очередях транзакций и не транзакционные сообщения в очередях без транзакций. –

+0

Да NSB только позволяет вам иметь одну входную очередь на физическую конечную точку. Можете ли вы объяснить, как это будет относиться к надежности? –

ответ

1

способ, которым я смотрю, это очередь на каждый процесс, который вы запускаете. (или домен приложения более конкретно, если вы настраиваете домены приложений вручную - что, вероятно, нет, если вы не создаете несколько сервисов в полках стеллажей). Да, одна и та же очередь может обрабатывать разные типы сообщений. каждый обработчик, который соответствует типу сообщения, который приходит, будет вызван для входящего сообщения. настройка nservicebus для просмотра очереди связана с кодом/конфигурацией самого процесса, а не с сборками, связанными с обработчиками и такими (может иметь процесс и обработчики в тех же сборках). вам нужна только одна очередь, пока сообщения, которые будут обрабатываться, отправляются в эту очередь. не уверен, что это отвечает на то, что вы ищете, но именно так я вижу причину, по которой вам нужна только одна очередь для домена приложения.

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