企业服务总线和消息代理

时间:2008-10-30 17:36:35

标签: wcf remoting soa

好吧,有时间变得愚蠢,我想开始关注WCF,但说实话之前我想了解更多有关SOA的信息。

我真的不了解“企业服务总线”的概念,也不确定它是模式/方法还是软件。此外,山姆可以说是“消息代理”。

最重要的是SOA框架如何适应这里,即BizTalk,WebSphere等?就此而言,WCF如何适应?

我真的不喜欢这个东西所以你能尽可能简单地回答你的问题,并且不要试图用科学来阻挠。

3 个答案:

答案 0 :(得分:3)

简单来说,SOA将与表示相关的组件与提取内容的机制分离开来。

这听起来非常微不足道,但我们的想法是,演示组件不仅应该独立于获取数据的程序,还应该与它无关。

为实现这一目标,创建了一个“服务”抽象层,其中包含着名的“企业服务总线”(ESB)。 ESB是了解服务所在位置的程序,以及如何调用它们以将数据中继到请求者。

SOA现在已成为企业级系统中的标准,而不仅仅是一种选择,原因很简单,因为数据 (而不是“可能”)从不同来源获取。例如。登录/认证服务可以是基于LDAP的集中式;可以使用与托管数据库引擎的JDBC连接获取订单详细信息;信用卡授权可能正在使用支付网关Web服务调用;等等...

使用此架构的最大优势是,如果明天可以从不同的资源获得相同的服务,则对核心应用程序设计的影响为零或极小。

答案 1 :(得分:1)

将流行语与现实分开可能会很棘手,我同意。

以下是我对此的看法:

SOA旨在围绕服务定位您的业务功能。这意味着在功能黑盒方面思考(通常)定义良好的接口。通常,SOA还涉及提供服务的前期工作 - 这使其与更为旧的“整合”区别开来 - 尽管两者之间存在高度的交叉。

ESB只是一个架构层,允许您将服务连接在一起。它通常会增加连接性,路由,协议转换等。它是可选的,但仍然是许多SOA项目的典型组件。这是一种模式,但许多软件供应商都有ESB“产品”,可以帮助实现这种模式。

这些是公认的模糊答案,一些软件/服务供应商有更具体的定义(以及实现它们的各种技术)。你必须对这些事情有所了解。

免责声明:我作为WebSphere顾问为IBM工作,但我不是以官方身份为他们发言。

答案 2 :(得分:0)

ESB提供了一个基于标准的集成平台,它将消息传递,Web服务,数据转换和智能路由结合在一个事件驱动的SOA中。 ESB是迈向完整SOA的重要步骤之一。

像Biztalk Server 2006这样的框架以及它的ESB Guidance工具包旨在成为ESB。正如您可能已经知道的那样,Biztalk开箱即用,提供消息传递,Web服务和转换功能。通过ESB Guidance工具包(www.codeplex.com/esb),BizTalk现在可以提供基于智能内容的路由和基于行程的处理。这使得集成架构比具有重量级集成代理的传统EAI架构更松散地耦合。

WCF可以作为托管服务的轻量级容器,消费者可以通过ESB访问这些服务。

从硬件世界来看,ESB就像是PC中的主板一样,所有设备都通过总线插入到主板上,然后通过主板来确定不同设备如何相互通信。设备只需知道它们与总线接口的方式。

干杯