nServiceBus против Mass Transit против служебной шины Rhino против других?

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

Какие плюсы и минусы люди нашли в использовании каждой из вышеперечисленных платформ? Каковы преимущества использования этих систем по сравнению с ручной системой MSMQ с привязками WCF и / или решениями, не относящимися к MSMQ?

4 ответа

Решение

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

Возможно, вам понадобится какая-то инфраструктура надежного / транзакционного обмена сообщениями, поэтому, не используя MSMQ, вы останетесь с Service Broker на платформе Microsoft или какой-либо другой альтернативой, такой как ActiveMQ. Преимущество MSMQ заключается в том, что он уже установлен на всех компьютерах Windows, в отличие от Service Broker, который этого не делает.

С точки зрения выбора между NServiceBus, Mass Transit и Rhino Service Bus - этот ответ Stackru, сравнивающий NServiceBus с MassTransit, будет хорошим началом.

В нашей версии 3.1 мы представляем NSB Studio - набор интегрированных инструментов Visual Studio для моделирования, которые позволяют вам моделировать вашу систему на более высоком уровне абстракции и позволяют выполнять большую часть конфигурации и инициализации NServiceBus автоматически. Я бы сказал, что это действительно склоняет чашу весов в пользу NServiceBus.

Надеюсь, это поможет.

Отказ от ответственности: я являюсь автором NServiceBus.

NServiceBus - хороший продукт, но остерегайтесь проблем с лицензированием. Он имеет тенденцию менять свою лицензионную политику по желанию авторов. Посмотрите, например, на старую информацию о лицензии.

Может случиться так, что в процессе разработки вашего проекта вы обнаружите, что должны заплатить много денег за NServiceBus.

Также бесплатная версия имеет ограничения по производительности.

MassTransit является абсолютно бесплатным открытым исходным кодом, он не имеет ограничений и находится под лицензией Apache 2.0.

Я не использовал Rhino Service Bus.

Обновление в состоянии Rhino против NServicebus:

http://www.infoq.com/news/2012/04/nservicebus3-0

InfoQ для Ayende: Вы ранее написали служебную шину для.NET, а именно Rhino Service Bus. Должны ли пользователи Rhino Service Bus пересмотреть свое решение и перейти на NServiceBus?

Ayende: Я построил Rhino Service Bus около 2008 года. Я построил его главным образом потому, что в то время меня не устраивало состояние других служебных автобусов. У меня были разные проблемы и направления при строительстве моего сервисного автобуса, но это было 4 года назад. В то время, я думаю, что NServiceBus добился больших успехов в том, чтобы стать более простым в использовании продуктом и иметь намного лучшую из оригинальной истории разработки. Если бы я сегодня начал с сервисных автобусов, я сильно сомневаюсь, что буду строить свой собственный.

Потенциальным недостатком чего-либо на основе MSMQ является ограничение на максимальный размер сообщения. IIRC - это приблизительно 4 МБ, с которыми вы можете легко столкнуться, если имеете дело с большими файлами и храните содержимое файла в сообщении.

Другие вопросы по тегам