.net服务总线建议?[关闭]


73

我们需要具有发布/订阅功能的分布式体系结构消息系统/服务总线。有人对我们可以用于.net应用程序的框架有任何建议吗?


17
这些问题非常有建设性。这个问题在Google搜索的顶部,非常有用。与我对UML stackoverflow.com/q/6877121/377133的
Sergey Metlov 2013年

4
这不是建设性的吗?你一定是在跟我开玩笑。我说这个问题很有建设性。这类问题的最佳资源。
kheya 2015年

2
@kheya由于多种原因(可能产生垃圾邮件以及这些工具过时的速度很快),这些类型的问题被认为没有建设性。这是一个关于meta的答案,它解释了这一点,而且我敢肯定还有更多:meta.stackoverflow.com/a/251135/1195056
krillgar 2015年

1
最后,产生了软件建议书来处理这些建议。
ivan_pozdeev

请重新打开问题。它在Google搜索中的地位很高,需要进行讨论。
Jonas_Hess

Answers:


26

NServiceBus越来越受欢迎。它也是开源的。这是Hanselminutes的一集,Scott Hanselman与Udi Dahan谈论了有关NServiceBus的内容,以帮助解决它。您绝对应该评估使用它。

更新:还有一个DNR电视剧集,显示从头开始构建NServiceBus解决方案的感觉:http ://www.dnrtv.com/default.aspx?showNum=199


43
尽管它是开源的,但您可能需要查看其许可。只有一些用例是免费的。在其他情况下,您可能需要付费的商业许可证。
曼弗雷德

4
您可能希望避免下载nServiceBus源代码,因为该源代码(2.0版之后)未获得开放源代码许可(至少,不是通用许可证)。因此,通过获取源代码,您可能会发现自己处在模糊的法律领域。如果您是一家小型网上商店,则可能不是真正的问题。如果您是一家财大气粗的财富500强公司,...
Eric J.

1
只是为了澄清一些意见,NServiceBus使用了互惠许可证。基本上,这意味着您必须将使用NServiceBus的任何内容开源。如果那对您不起作用,那么您必须购买它。
瓦卡诺


6

查看RabbitMQ。.NET客户端功能齐全,非常易于使用。有一本叫做《RabbitMQ in Action》的书,还有《RabbitMQ in Depth》,可以在早期访问版本中获得。


RabbitMQ不只是一个开源消息队列吗?我不认为它本身实际上是服务总线框架。
gabe 2014年

从技术上讲,它是一个消息代理。如果符合项目要求,您是否在乎人们如何对其进行分类?
TrueWill 2014年

3
知道它更像是经纪人,对您很有帮助!我不在乎这些术语,而是在设法让我的大脑围绕这些技术之间的差异(因为这是该问题的本质)。我记得关于经纪人和公共汽车之间的一些区别的有趣帖子:udidahan.com/2011/03/24/bus-and-broker-pubsub-differences
gabe 2014年

3

我目前正在研究基于开源WCF的服务总线。您可以在这里找到它:http : //rockbus.codeplex.com/。它支持动态(@运行时)订阅,订阅存储库(数据库),可插拔传输,基于XPath的基于内容的路由,通过wcf协议进行事务传递,轮询传递,可插拔订阅评估等。看一看!


3

我发现集成到Apache NMS中的ActiveMQ非常易于理解,设置和透明。

例如,ActiveMQ带有Web前端,使您可以使用Web浏览器查看消息队列,以及读取,删除甚至创建消息。因此,您可以轻松地开始仅开发和测试分布式应用程序的一侧,并且调试和监视非常简单。


3
从版本4.0开始,NServiceBus可以在ActiveMQ(以及其他队列)上运行,为您提供两全其美的解决方案。
Udi Dahan


2

到目前为止,.NET堆栈中还没有成熟的Service Bus实现。微软目前正在开发一个。

http://msdn.microsoft.com/zh-CN/library/windowsazure/jj193022(v=azure.10).aspx

作为一种选择,您可以使用Java世界中的一种。例如,TIBCO-它们具有相当强大的.NET Client Avilable或OpenMQ。

如果您不需要各种功能并准备开发自己的系统,请使用WCF。WCF回调非常适合于此。


16
I think you are mistaking ESB for Messaging. Tibco and OpenMQ are Message Queues. They simply provide the transport mechanism. Nothing More. About .NET Service bus implementations: You are more or less right, although NServicebus is coming pretty close to a mature product and the efforts seem to be there to do so. And as someone who as partially build several solutions using WCF as a servicebus: No.. WCF is not suited for this. Pub/sub in WCF is a pita to say the least and will require a serious deep dive into WCF and it's architecture to only find out that it is not meant for it.
Noctris

IMHO not true. Neuron ESB is stable & mature - and built on Microsoft technology (.NET incl. WCF/MSMQ etc.)
larsw
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.