NServiceBus против Mass Transit vs Rhino Service Bus против другого?

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

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

Ответ 1

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

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

С точки зрения выбора между NServiceBus, Mass Transit и Rhino Service Bus - этот ответ fooobar.com/questions/84032/... будет хорошим началом.

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

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

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

Ответ 2

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

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

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

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

Я не использовал сервисную шину Rhino.

Ответ 3

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

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

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

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

Ответ 4

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