精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-12-06
Web服务和JCA都是解决集成问题方面的标准,但它们却并不互相竞争。开发者和用户们需要知道这两者是不同的,并且需要知道这两种技术的差别所在,这一点很重要。 Web被定位于用来标准化集成的技术,而JCA规范则用来标准化企业应用集成(EAI)。其中EAI是广义上集成问题的一个子集。因此,问"如果我有一个EAI问题,该使用Web服务、JCA,还是两者兼而有之?"这样的一个问题,完全是合乎情理的。 最大的区别在于侵入 侵入(Intrusion)是指为了支持集成技术而需要对遗留系统做的改动。 l JCA:该技术需要很少或者不需要对遗留系统的侵入。JCA适配器可以利用本地API、套接字、数据访问以及其他不需要更改现有代码基础的技术来访问遗留系统。于是公司就可以利用在已部署系统中的投入,而不必再投入额外的资源来更新系统以支持集成。 因此,如果一个公司想为EAI使用Web服务,最有可能的做法是购买一个Web服务网关,该网关将截取Web服务消息,对遗留系统进行本地调用,得到响应,然后将其转换成一个响应Web服务消息。JCA很容易就能被用作进行本地遗留系统调用的技术,但很多公司可能反对使用这么多的消息层来启用EAI。 顺便说一下,我个人认为EAI问题最终会成为Microsoft的.NET策略中的一个障碍。由于大多数遗留系统都不是运行在Microsoft Windows上,所以.NET不可能直接进行遗留系统集成。Microsoft已经公开宣称Web服务为他们未来的EAI战略。这意味着Microsoft在依赖公司将Web服务栈内置于遗留系统中以获得对它们的访问。我想说的是企业肯定不会接受这种做法,来做这么一笔投资。因为那些使用.NET的企业将被迫购买EAI服务器(WebLogic Server是不错的选择)来截取Web服务请求并使用像JCA这样的EAI类技术来进行集成。 上下文传播 需要考虑的一个严重的基础结构问题是从使用遗留系统的客户到遗留系统本身的事务和安全上下文传播(Context Propagation)。 l JCA:JCA支持从JCA服务器到遗留系统的安全和事务传播。这是JCA设计中最主要的基础结构概念之一,也是被很多集成环境采用的一个强有力的原因。这意味着如果一个标识用户的XA事务上下文或者安全上下文是在应用服务器中创建的,那么当应用服务器调用遗留系统上的服务时,遗留系统就会感染上事务和安全上下文。就XA事务来说,这意味着如果遗留系统是XA-compliant的资源管理器,它就能参与XA事务。这样设计师们就能设计出EAI系统,这种系统能保证具有遗留系统以及使用该系统的客户的ACID事务。至于安全来说,这意味着用于个人的单点登陆(single sign-on)可用于客户和遗留系统之间。在设计和遗留系统的交互时,这些是需要考虑的关键特性。 但是也不要对Web服务失望。Web服务为业务逻辑(business logic)层提供了一个商业级的接口,而不是一个细粒度(fine-grained)的方法。如果这样的话,Web服务就需要事务,安全以及很多其他的基础结构技术,但是它们必须应用于Web服务所运行的环境中(不可预测的响应,不可预测的载荷,应用的来去,XML格式的变化等)。例如,OASIS工作于商业事务协议(BTP),为该环境中的系统提供了寿命很长的事务。另外,它还创建了很多安全Web服务规范。Web服务最终会改变开发者对商业服务的看法以及他们用来创建商业服务的体系结构,但是这些新的方案是否适用于EAI,这得你自己判断。 代码绑定 l JCA:JCA是基于Java的技术,这并不意味着遗留系统必须是用Java编写的,但是使用JCA的遗留应用必须用Java编写。这给设计师们某些暗示。首先,任何使用JCA的应用和它对JCA的使用绑定在一起。这意味着如果应用对遗留系统的使用需要作出变化,那么开发者必须动手重新编写JCA访问代码以作出改动。这对于一些公司来说可能是问题也可能不是。其次,应用可以利用对访问遗留系统的客户所作的强制声明(strong typing)和编译时间检查。由于用来访问遗留系统的数据类型和方法是以Java类型出现的,使用JCA的Java应用可以对遗留系统的语义用法进行编译时间检查(它并不确认该系统的正确用法,只是说明使用该系统的语法是正确的)。 数据绑定 另一方面,很多公司用XML格式来表示遗留数据自有他们的道理。XML在商业上很有意义,有很多种方法来跨越不同的应用和系统使用这些商业意义。但是,如果遗留系统在本地将它的数据用XML展现出来,那么Web服务可能会提供一个无缝方案,该方案使得对JCA的使用也变得很麻烦。在过去的三年里人们创建了很多使用XML作为数据格式的系统,这些系统现在都已成为遗留系统,所以这种方案可能是可行的。 结论
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
浏览 3539 次