【问题标题】:What is a service bus and when do I need one?什么是服务总线,我什么时候需要?
【发布时间】:2011-02-13 01:36:09
【问题描述】:

我听说过NServiceBus,但我还没有真正理解它是什么。他们声称是“.net 最流行的开源服务总线”。

什么是服务总线,什么时候需要?

【问题讨论】:

  • 我真的迟到了,我不会把这个作为答案发布,因为它不是这样的,但简而言之,如果你不知道为什么你需要一个,那么你很可能不需要' t ...它解决了您在连接应用程序和为您的企业提供集中式 API 方面可能没有的特定问题。
  • @Wardy 我不同意你的说法。您不了解或不知道它是什么的事实并不意味着它不会帮助您了解它
  • 这不是无知的借口,而是更多地指出服务总线是一个当你遇到它解决的问题时经常被抛出的术语,所以你要么需要它,要么你不会' t,因此永远不必担心。
  • 我会将其添加为编辑,但它会从根本上改变问题...... NServiceBus 现在被称为“特定服务平台”,可以在particular.net 找到(这是 NServiceBus. com 无论如何都会重定向到现在)。
  • 如果您不知道已经存在的事物的名称或概念,您可能会自己编写。因此,最好了解它们,以便您可以使用它们(如果需要)

标签: .net nservicebus servicebus


【解决方案1】:

查看Enterprise Service Bus 的维基百科文章。

在实现良好的面向服务架构的永无止境的探索中,服务总线充当了又一个抽象层。服务总线可以处理一些在良好的面向服务的架构(如消息传递、路由和服务协调)背后的繁重工作。

如果您不确定为什么需要这样的东西,我建议您阅读一下什么是好的面向服务的架构。 Thomas Erl 的 Service-Oriented Architecture: Concepts, Technology, and Design

【讨论】:

  • 那么我可以用它来做桌面客户端应用程序和服务器之间的通信吗?服务器在内部,也就是说。
  • 你可以。您还可以将其用于不同服务、不同服务的不同版本等之间的通信(包括服务使用不同协议的情况)。
【解决方案2】:

这个术语是用SOA 引入的,它在某种程度上是EAI 的继承者(作为流行词)。

什么时候需要?这是个好问题。它具有很多复杂性。

如果解决的问题多于导致的问题,则可以根据经验法则。

如果您有一个异构环境并希望将(不同的)应用程序(使用不同的技术)与业务流程保持一致,那就要认真了。 那么在 orchestration 和 choreography

中使用 BPEL(但这会引入迁移问题)可能会有所帮助

编辑:维基百科上没有的是练习: ESB 可以使用特殊的连接器、旧的终端应用程序来适应 Corba 或 Java Enterprise,这意味着互操作性。缺点是围绕 SOAP 的 100 多个“标准”如果不付出巨大的努力就无法合作。

如果您必须在 2 家大型保险公司合并后的 6 个月内互连 IT 系统,您肯定需要它。

【讨论】:

  • 所以 - 在我的桌面应用程序中,它与服务器端有一个“简单”的通信,不需要使用服务总线来做大吗?它可以帮助我从服务器实现推送模型吗?还是在这种情况下,痛苦大于收获?
  • @stiank81 抱歉,我读到了(企业)服务总线和突触触发。我检查了您指向 NServiceBus 的链接,它们的目标相同,您在客户端服务器应用程序中不需要类似的东西。它是指涉及一个业务流程的多个应用程序的概念。如果它对你有用?如果它解决的问题多于导致的问题。
  • 使用它“如果它解决的问题多于引起的问题”......喜欢它。
【解决方案3】:

您可以将服务总线视为 SOA 的以太网。

首先,它引入了一种识别事物的语言,例如以太网中的 IP 地址。这个名字本质上不是物理的。

接下来,每个节点都涉及到一些物理上的东西,例如支持半连接通信的总线中的队列,或者隐喻中的以太网卡。

除了物理之外,还有通信的“协议”部分,例如以太网的 OSI 堆栈。对于总线,这是应用程序代码使用的客户端库。

最终,您可以将服务总线视为为构建分布式系统提供更高层次的抽象。您还可以将它用于客户端-服务器通信,为您提供持久的单向消息传递以及服务器将通知推送回客户端。

具体来说,您会发现 NServiceBus 非常轻量级且易于使用,一旦您对队列技术的使用感到满意 - 您选择 RabbitMQ、MSMQ、常规 SQL 表、Amazon SQS、Azure 存储队列和 Azure 服务巴士。

【讨论】:

  • 谢谢!想我现在明白了!实际上问这个问题是为了为你今晚举行的会议做一些准备,但看起来我做不到..
猜你喜欢
  • 1970-01-01
  • 2011-04-05
  • 1970-01-01
  • 2011-05-13
  • 2012-09-16
  • 2014-10-13
  • 1970-01-01
  • 2010-09-21
  • 2018-02-25
相关资源
最近更新 更多