Использовать NServiceBus для интеграции настольных приложений?
Фон:
- У нас есть несколько приложений для Windows, которые необходимо интегрировать.
- Мы думаем, что механизм / библиотека IPC с подпиской на публикацию поможет.
- Inter app События не должны быть сохранены;
- Не все приложения написаны на.NET, но те, которые не имеют подключаемой архитектуры, которая допускает расширение в.NET
- Приложения запускаются пользователями в среде службы терминалов.
- Механизм IPC должен поддерживать изоляцию пользователя. Я не хочу, чтобы сообщение, отправленное экземпляром приложения A Джо приложению A в экземпляр приложения B Джо, заканчивалось экземпляром приложения B. Сэма.
Насколько я понимаю, это возможно с помощью:
- использовать IPC со встроенной изоляцией пользователя (DDE)
- используйте общий IPC и самостоятельно реализуйте изоляцию пользователя (включите в сообщения идентификатор пользователя)
Вопросы:
- Одним из вариантов, о котором мы думаем, является NServiceBus. Кто-нибудь использовал эту библиотеку для этой же проблемы (интеграция с рабочим столом)? NServiceBus даже предназначен для использования таким образом? Возможно, кто-то заменил транспорт по умолчанию (MSMQ) на что-то изменчивое?
- Есть ли кто-нибудь, кто на самом деле имел такую же проблему и решил ее с помощью другого механизма pub-sub?
1 ответ
NServiceBus был создан, чтобы помочь устранить ошибки распределенных вычислений. Учитывая, что ваш сценарий включает в себя несколько приложений, запущенных на одной машине, NSB действительно не применимо здесь, по моему мнению. Ваше предлагаемое решение кажется возможным с учетом местонахождения приложений.