【IT168 技术文章】
有效结合Ajax技术和SOA并进一步实现的丰富企业级应用产品能够直接赋能于最终用户,让其掌握强大的功能。之所以能出现这种情况的原因在于,REA应用会更多的与潜在的重要用户保持关联,增强用户内部的合理性,这也会对处于当前IT环境中的用户群体相当大的压力,从而促成了其实现。
当今,各个企业都在想方设法提高自己的生产效率,并且对IT资产的重组也都在努力的探索当中。借助于面向服务的架构(SOA)技术,IT组织已经在克服这些问题方面取得了一定的成效,SOA和Ajax对于整个IT业务而言意味着巨大的回报会因为两者的出现而存在,同时,将这两种先进技术结合起来也是作为IT业务发展所必将经历的关键应用。一种以网络为基础,被称为“丰富企业级应用(Rich Enterprise Applications)”或REAs的全新应用应由而生。
REA不仅仅能够将Ajax与SOA的技术优势淋漓尽致的展现出来,更是在这个基础上提供一个先进的平台,通过授权最终用户以互动和整合的方式,有效提高产品生产效率,而这一应用方式是前所未有的。
Ajax技术提供了一种基于流览器的丰富互联网应用(Rich Internet Applications,RIA),它描述了一种运行在流览器中的全新 “桌面程序”互动式丰富应用。RIA应用不仅仅只是Ajax技术,同时还包括Flex,Flash,Java甚至微软的XAML等其他技术。就现有的企业应用看来,在技术标准以及采用率方面,Ajax将持续性的成为企业RIA应用技术的关键选择。正是因为如此,我们在本文中对RIA应用的相关讨论绝大部分都会是集中在Ajax。
SOA,在相对于RIA应用而言,并不是作为一套技术,而是更多的强调一种架构风格,或是说基于松藕合原则,通过统一标准的“服务”而不是硬性关联的将应用软件连接到一起的架构体系。虽然很多时候我们在谈论服务和SOA都是处在同一背景之下,但其实这两者是不尽相同的。我们在这篇关于REA应用的讨论中就SOA服务更多的是强调其松藕合的特征,而对于一个SOA服务所使用的技术内容并未有所涉及。SOA服务可以是一个RSS源,一个数据库展现的XML到HTTP接口,甚至可以是一个第三方搜索引擎所提供的正式SOAP接口。
Ajax与SOA的结合等于丰富企业级应用
有效结合Ajax技术和SOA并进一步实现的丰富企业级应用产品能够直接赋能于最终用户,让其掌握强大的功能。之所以能出现这种情况的原因在于,REA应用会更多的与潜在的重要用户保持关联,增强用户内部的合理性,这也会对处于当前IT环境中的用户群体相当大的压力,从而促成了其实现。
正因如此,REA应用对于未来的企业架构规划与设计将会产生非常重大的影响。其实,REA应用的影响在某些企业中已经是可以发现的,尤其是对于一些作为早期SOA实施的较大型企业而言,类似这样的应用已经在开始发挥作用。
早期实施企业针对于“应用对应用整合”这一需求已经完成了一个或者两个甚至更多的SOA相关项目内容,只是他们还没有完全将这些新近完成的数据资产直接授权于他们的最终业务用户。正如我们都知道的,对于多数行业来说,收入方面的决定权大多掌握在这批最终用户手中。而所有关于最终用户以及Ajax所能对SOA的支持在以往SOA应用项目中并未曾顾及到,那就是:为用户提供“最后一步”的业务功能。
REA所带来的企业级效益
在当前的发展状况之下,已经有许多世界级REA应用的成功案例可供分享,结合这些示例能够有助于解释REA应用在企业架构规划和设计中的用途,效益以及所带来的重大影响。目前我们能看到的最为成熟的一次REA应用执行是Defense intelligence分析机构部门所采用的基于Ajax的“webtop”项目。每一个分析师从一个空白的webtop开始,创建一套以SOA服务为基础的信息资源以供使用。
服务可以是由一些计划、预计的事件组成,如一些档案数据库中或是第三方新闻服务所提供或反应出来的即成事实和统计。许多可供使用的服务是从现有的整合数据资源中提炼出来可以直接为面向服务架构体系所使用的SOA型服务。其他的服务则是来自一些并非完全正式资源的“虚拟化”服务,这些资源可以是数据库,可以是EJB应用,可以是由两个或多个小粒度资源混合而成的“混合型服务(service mashups)”,这些混合型服务对于分析师而言比那些小粒度的单独资源更加有用。
一旦服务被选定,将会以各种不同的方式进行个性化。例如,可以应用过滤器,改变或格式化显示区域……甚至是一些你所期望的Web2.0级别的应用,具体的数据记录或是项目也可以通过共享的社会化形态让其他用户在一个社区范围内使用。例如,分析师可以在webtop建立一个有期效的数据项,并将其显示给其他的分析师。很多服务还允许数据更新的同时可对原始资源进行更新,同时会通过webtop即时反应到其上各数据的同步显示。