微软ESB产品进入.NET 3.0时代

也许没有IBM和BEA对 SOA那么大的宣传声势,但基于最广大客户端用户和.NET 平台,微软的ESB产品并不逊色于“拼凑”路线的J2EE平台。但令.NET社区不满的是.NET 3.0已经正式发布近一年,微软的ESB产品还仅对.NET 2.0提供完全支持,这种情况一直拖到上周。

10号,微软在台北市发布了BizTalk 2006的R2。按照微软的产品分工,SOA产品线中的关键产品ESB是由BizTalk Server完成的,从功能性、易用性上讲,它与“On Demand”、“Fusion”、“Liquid”的那几家产品难分伯仲,而且在很多方面BizTalk都要略胜一筹。但SOA不仅仅是概念,必须要落实,也就是要通过某些开发平台把它真正用起来,把企业的应用变成业务服务、把数据变成信息服务、把运行维护支持能力变成管理服务“挂”上去;微软的产品线中,开发平台有.NET Framework、VSTS的产品,还有Enterprise Library、Software Factory、ASP.NET AJAX等通用并被广大开发人员普遍使用的框架,但作为面向服务的分布式计算中间件WCF,即便被国内、外同行普遍看好,但在BizTalk 2006中始终没有用武之地,从下图不难看出如果受限于BizTalk所支持的.NET Framework版本,将在大程度上阻碍BizTalk为中心的微软SOA项目发展。

此次发布的BizTalk Server R2版本中包括了WCF Adapter及相应的SDK,它们的组合如下:

  • BizTalk作为一个后台服务,除了可以完成点对点的消息调用外,更主要的是它可以完成多种信息源、多应用服务环境下的新业务编排和多种消息机制,而且所有操作都是基于微软平台管理员所熟悉的统一管理界面;
  • 如果说BizTalk搭出来的是一个平台,WCF就很像穿针的线,它可以很容易的把所需的各种内容(其他应用提供的业务服务、数据服务、管理服务、IT平台服务)缝在一起,形成新的业务服务能力。通过BizTalk的WCF Adapter可以把WCF写成的程序集作成一个个插件安到BizTalk这个总线上。

相比较以前Web Service Adapter、.NET Remoting Adapter等Adapter而言,WCF则是一个更抽象的同时更为普适的选择,开发团队基于业务需求通过WCF的ABC把内容描述出来,至于到了部署的时候选择COM+还是ASP.NET Web Service,都可以。

BizTalk 2006 R2引入了WCF也就等于引入了整体.NET Framework 3.0,毕竟无论向上为WPF传递信息、向内与WCS的安全机制集成,WCF都是最平滑的。除此而外,BizTalk 2006 R2配合WCF等于提供了一个支持各种消息模型的通用框架,它可以很容易完成高级SOA应用中亟需的事务性、异步消息队列机制、异步方法调用和统一安全机制等特性的支持,之前很多工作都需要通过重磅COM+或者集成第三方产品完成,由于他们很多都不是这个时代的产品,因才在XML化的今天,很多时候都显得笨重而且臃肿,执行效率也因为频繁的互操作受到影响。

如果计划基于.NET平台开发开发自己的SOA项目,除了已经内置了很多现成机制(UDDI、IIS、Active Directory、Automatic Update……)的Windows自身外,这个组合也许不错:

  • BizTalk Server 2006 R2
  • .NET Framework 3.0 +
  • SQL Server 2005 SP1
  • SharePoint Portal Server 2007

你可能感兴趣的:(微软ESB产品进入.NET 3.0时代)