近段時間在看SOA,在國外網站有很多資料可以查看,本來在中文網站中找到一片關于這兩個框架的對比介紹的可惜筆者沒有認真翻譯,只有花點時間自己翻譯了一個版本,希望對技術界的朋友有所幫助。
我正糾結于NServiceBus和MassTransit的選擇上的利弊。
現在我已經知道一些思路,但是這些并不能真正回答了我的疑問。
下面是我已經知道的內容:
NServiceBus 出現的更早,有更多的引用文章介紹,MassTransit很難找到關于它的內容,但是我是一個開源思路支持者。然而我又必須選擇一個可靠的解決方案,所以我需要一些幫助。
所以,我希望這里有對這兩個框架有經驗的人告訴我,為什么我應該選擇NServiceBus?或者為什么我應該選擇MassTransit?
是關于穩定、安全、可擴展還是別的什么?
回答者1:
如果是我去總結,下面是我的觀點:
如果你需要商業支持,請選擇NServiceBus.如果你習慣于在博客,開源社區尋求支持,MassTransit會使一個不錯的選擇。開發者們非常愿意回答我們提出的問題的。
如果你選擇MassTransit,現在你需要選擇從MSMQ和RabbitMQ中選擇一種作為你的隊列服務器。如果你需要DTC 請選擇MSMQ。如果你需要更多功能并且更好的管理,請選擇RabbitMQ。
在我們的項目中,有兩個因素促使我們把NServiceBus遷移到MassTransit:
回答者2:
我用過這兩個框架。 我用MassTransit的時間比NServiceBus要長。下面是我對這兩個框架亮點的概述。
成本上:
MassTransit 是 Apache 2.0許可的可以免費用于商業產品,然而NServiceBus不是。
技術支持上:
在Udi上提到,有關于NServiceBus的商業支持選項,但是在MassTransit上沒有。
傳輸介質:
MassTransit 支持 MSMQ和RabbitMQ。
NServiceBus的早期版本只支持MSMQ,RabbitMQ的支持是在NServiceBus4+的版本中。
RabbitMQ 和 MSMQ的比較:
MSMQ 支持 DTC(分布式事務調度)包括多進程可能在多臺計算機上運行的事務集合(e.g.SQL Server,Windows Service)
RabbitMQ 有一個杰出的管理接口
MSMQ存在已久并且是微軟的產品
RabbitMQ 新一點,開源,免費,由VMWare贊助
MSMQ作為默認被安裝在所有的Windows系統上
Udi Dahan 和 MassTransit 團隊的成員們(Chris Patterson, Dru Sellers, and Travis Smith) 都是杰出的人才
回答者3:
作為NServiceBus的原創作者,我顯然更傾向于選擇自己的技術,所以我會盡我所能試著讓它更穩定。
更新:現在在Particular Service平臺上有關于NServiceBus的監視和調試工具可以獲得,這些工具在你的基于消息的系統上
創建和運行更容易。在技術的完整性上,我相信這種強大的提示和穩定在NServiceBus中的支持。
結束更新
在早期,我曾經追蹤過MassTransit的發展。最近我沒有這么多的時間去關注了,所以我認為兩個系統在替代生態系統都有它們自己對的和自己的關注地方。
這里有很多社區都圍繞著NServiceBus,所以如果你需要幫助,這里有很多人可以幫助你解決問題。
意思就是說,MassTransit的核心團隊一直非常擅長幫助提那些問題的人解決他們的問題。
在 NServiceBus,公司可以購買技術支持這種技術支持保證在世界范圍內和24x7小時內能得到答復。我不相信MassTransit的團隊也能提供相似的服務。
在線下,NServiceBus在世界各地有很多公共課程可以得到。也有很多顧問在現場去安裝一個項目或者參與協助遇到的問題。我已經聽到幾個公司都決定從MassTransit遷移到NServiceBus
原因是MassTransit不能在他們需要技術支持的時候提供一個人在現場提供支持。
我想說的是,NServiceBus的許可模式可以足夠靈活的去適應任何預算,在大部分的客戶頻譜上顯示,這樣對管理也合乎情理。當然,對于MassTransit,許可是免費的。
希望這些話對你有幫助。
原文:http://stackoverflow.com/questions/13647423/nservicebus-vs-masstransit
I'm struggling with a PRos and cons list regarding NServiceBus and MassTransit.
Now I know there is already a thread in here, but it doesn't really answer my questions.
Here is what I've read so far:
NServiceBus is older, and has more references. It's hard to find stuff about MassTransit, but I'm open-minded. However I have to deliver a solid solution, and so I have to ask.
So please, someone with experience with both frameworks. Why should I choose NServiceBus? OR Why should I choose MassTransit?
Is it performance, security, scale or?
If I had to summarize, here's what I'd say:
If you need commercial support, go for NServiceBus. If you're comfortable with using forums as a means of support, MassTransit is a great option. The developers have been very responsive to our issues so far. If you choose MassTransit, now you will choose between MSMQ and RabbitMQ. If you need DTC go with MSMQ. If you want more features and better administration, go with RabbitMQ.
On our project, we switched from NServiceBus to MassTransit for two reasons:
I've used both frameworks. I've used MassTransit longer than NServiceBus. Here are the highlights as I see them.
Cost:
Support:
Transport:
RabbitMQ vs MSMQ:
Udi Dahan and the MassTransit guys (Chris Patterson, Dru Sellers, and Travis Smith) are all brilliant people.
As the original author of NServiceBus, I'm clearly biased towards my own technology, so I'll try to keep this as balanced as I can.
Update: There are now monitoring and debugging tools available for NServiceBus through theParticular Service Platform which make building and running message-based systems much easier. With full technical integrity, I believe that this strongly tips the balance in favor of NServiceBus. End Update
While in the early days I did track much of the MassTransit development, I haven't had much time to do that recently, so I'll assume that both technologies are equally good in their own right and focus on the ecosystem instead.
There is a larger community around NServiceBus, so if you need help, there are more people who can give it. That being said, the core group of MassTransit have always been extremely good at helping anyone who has issues.
With NServiceBus, companies can purchase support and get guaranteed response times on their issues - 24x7, around the world. I don't believe a similar offering is available from the MassTransit guys.
From an offline perspective, there are public courses available around the world on NServiceBus as well as many consultants who can be brought on-site to kickstart a project or to assist in case of problems. I've heard from several companies that decided to switch from MassTransit to NServiceBus because they couldn't get someone on-site when they needed it.
I'd say that the licensing models around NServiceBus are flexible enough to suit any budget, as the broad spectrum of customers indicates, and can be well justified to management. Of course, with MassTransit, the licensing is free.
Hope that helps in some way.
|
新聞熱點
疑難解答