未来的Web services和面向服务的架构(SOA)可能就在于Ajax。Ajax是一种用于创建丰富的、基于Web应用的编程技术,它看起来和桌面软件差不多,但却基于浏览器,而且消耗资源不多。
Ajax在最近几个月里被大肆宣传,很大程度上是因为由Google开发的那一些高可见性的Ajax应用。
尽管如此,今天的Ajax还没有被广泛用于Web services和SOA。虽然它有很多好处,但仅仅被开发人员知晓却并没有深入运作企业业务的人们的思想里。而他们经常是对研发的经费和进展有最终发言权的人。
本文让我们一起来看看为Web services和SOA扩展Ajax研发会遇到什么阻碍,以及我们如何克服它们。
为什么Ajax比看起来难
Ajax使Internet上一些很令人感兴趣的有创造性的服务变的更强大,例如Gmail, Google Local (正式名称为Google Maps)以及其它的Google服务,还有A9搜索引擎。
使用Ajax的服务看起来非常像桌面应用程序,所以对于开发人员来说,它似乎并没有什么新技术。分析师和做Ajax开发的人同样也这么认为。
ZapThink.高级分析师Ronald Schmelzer说:“Google组织了一个Ajax开发人员的大团队来开发Ajax服务,但Google是一个拥有数十亿美圆的公司,所以才有能力这么做。”
另一方面,还有很多企业没有能力雇佣这样一个Ajax梦幻团队。而只要Google需要开发Ajax服务它就有能力为项目支付大笔的金额,哪怕最终项目被放弃,但是更多企业则面对着紧迫的期限和必须的部署。
ICESoft公司负责市场的副总裁Robert Lepack制作了一个Ajax部署工具。
他说:“事实上,开发Ajax很困难。每个人都在谈论它的好处,但没有人深究其复杂性,尤其是在SOA中使用Ajax的时候。”
对提高速度的建议
Tibco公司负责产品营销的主管Kevin Hakman是一年前Tibco买进的Ajax开发工具General Interface的创始人。他在Ajax变的如此受欢迎之前就已经涉足这个领域了。
Hakman反复强调对于Ajax有很多复杂的工作要做,但他指出这种技术的好处远比它的复杂性重要。因此,如果一家企业想采用Ajax但它的开发人员对这种技术还没有足够经验的时候,它应该怎么做呢?
Hakman建议这些企业不要害怕尝试Ajax。他说,Google已经发布了Ajax-Javascript代码和有开源证书的代码段。任何开发人员都能得到这些代码并立即开始学习使用它们。另外他还说,已有很多可以在线使用的小模块,例如展示表格数据的模块。
Hakman还说,当开发人员需要构建一个完整应用时,他们可以使用Tibco的General Interface。那是用于开发Ajax应用的完整框架及一套工具。它能使开发人员部署Ajax应用而不必受applet、插件或C/S框架安装的限制。它还能使Ajax组件获得重用。
Lepack指出,他公司的ICEfaces产品采用了不同的方法。他们使用了Java应用并能允许这些应用作为Ajax被交付。
今天的Ajax处于什么位置――它的前景如何
那么,当今天的Ajax走向Web services和SOA的时候,它处于什么位置呢?Hakman认为它还处于早期被接受阶段。创新者和IT领袖更多的是在使用它。但他还说,他们倾向于更早接受SOA。
Hakman补充道,在SOA和Ajax之间存在着很自然的配合。
他说:“Ajax是接受和部署SOA的催化剂。Ajax使SOA的好处变得可见,因此能帮助人们采用SOA。而通过Ajax,业务端用户能亲身体验到SOA的好处进而能体现SOA策略的价值。”
Schmelze毫不怀疑Ajax会最终被广泛部署在Web services和SOA中。
他相信,“虽然现在我们还看不到,但以后一定会。Ajax还没有产品出现,但马上就会有。可能在明年就很难找出一个完全不采用Ajax的大型企业应用了。”