XML发展促进SOA自由开发

 
   | |

导读:使用XML方法开发SOA的应用程序,从而实现更自由的代码编写以构建Web服务,这将有可能成为将来SOA开发的发展方向……

关键词:XML SOA开发 Web服务

 
正在加载数据...

【TechTarget中国原创】使用XML方法开发SOA的应用程序,从而实现更自由的代码编写以构建Web服务,这将有可能成为将来SOA开发的发展方向……

  使用以XML文档为主的方法开发面向服务架构(SOA)的应用程序,从而实现更自由的代码编写以构建Web服务,这听起来不可思议,但是已经看过它实施的分析家说,这是可行的并且有可能成为将来SOA开发的发展方向。

  据这家公司的商业发展部门经理介绍,在2003年当SOA刚刚起步成为UK带头者的奠基者,Hyfinity Ltd.为利用“公开的合成服务”的一项开发上的进步申请了专利。高级分析员Ronald Schmelzer和ZapThink LLC认为,主要的SOA方面的销售商可能都会希望他们已经拥有并且能够获得使用此项专利的权利。

  分析家宣称,这项公开的合成服务模型为灵活使用XML数据做好了准备,尽管这听起来很容易,但实际上功能非常强大。

  “它创造了一个处理XML数据和XML程序的XML机器,” Denham解释说,“你们正在将整个开发方式提高到一个新的水平,这个水平比传统以代码为中心的开发方式高得多。实际的用途可以通过使用我们的技术体会到,而且你能够非常高效地开发企业服务和应用程序。”

  2003年申请专利之后,这家公司又生产了一个叫做高速RIA(rich Internet application)的开发产品。Denham宣称,“制订这个战略就是要将它推向市场,并且证明它是可行的,当然最重要的是要证明我们申请专利的开发进展上的可行性”。

  Denham还说,这项高速RIA技术已经得到了好评并且Hyfinity正在考虑将这项专利运用到底层基础技术上,例如XML机器,即不仅要出售他们的专利产品,也要让其它一些销售商获得它的使用权。

  Schmelzer宣称,这是一个可行的策略,因为这样的繁荣已经证明了高速RIA在底层基础技术上的价值。

  分析家还指出:“这家公司还想用XML的方式重新考虑Von Neumann Machine,而不是将电脑当作你程序里面的东西,就好像你通过XML创造应用程序,这一切都由你来控制。当人们谈论开放的SOA,开放的BPM和RIA方式时,这将是一个非常有意思的转变。”

  为了争辩说目前的工具和技术正在让SOA的开发变得更加复杂,Schmelzer的同事Jason Bloomberg在今年年初写了一篇ZapThink technology note的文章来赞扬Hyfinity在对Internet应用程序编写上开放的,基于文档的进步,并且这些应用程序的编写在SOA上下文环境中大大影响了服务。

  “只有通过结合SOA提供的丰富的RIA用户接口的灵活性,公司才能灵活高效地发展他们的应用程序。”他写道,“将其推向为这种新类型的应用程序提供合适工具的挑战的正是Hyfinity。他还为构建RIA提供了一个混合平台和办公室环境,这些RIA在SOA环境中消耗和生产Web服务。Hyfinity在直接开发的环境中合成了丰富的用户接口和松耦合高灵活性的服务,从这两方面的任何一方面来说,它都是最好的。这帮助企业增加了评估的时间和企业应用程序开发者们的生产力。”

  Hyfinity的合作者Steve Bailey解释了这项专利是怎么样工作的。

  “最基本的汇编过程把应用程序的需求当作一系列服务,这些服务需要通过XML处理才能完成要求的功能。”他说,“在高速RIA环境中有一种服务,它的功能是实际地描绘XHTML屏幕。当用户从合适的地方键入信息时,它会接收从浏览器返回的信息,将这些信息翻译成XML文档格式,并传输到其它与外部Web服务通信的服务。”

  Bailey描述的这个过程是如此基于文档结构和无需编写代码,以至于很难让人相信它是一种应用程序的开发。

  “应用程序在我们看来与代码没有关系。”他说,“在我们看来它是从Web服务传输到浏览器的XML文档。当他们到达浏览器的时候,我们要做的工作是把一个拥有一些参数的SOAP消息,转换成包含一些参数的XHTML(Extensible Hyper Text Markup Language)的格式。用户输入数据,然后我们再把它传输给SOAP消息或者REST消息,最后把它们传输给处理它们的服务。”

  Hyfinity模型中的每一部分都在考虑如何将数据翻译成标准的XML格式。

  “如果我们得到一个想要连接数据库的服务,”Bailey解释道,“它的工作就是与XML通信或者接收XML,并将它传送到SQL,再将SQL查询结果返回到XML格式去。因此在我们的模型中,所有这些服务都是以完全相同的方式实现的。作为一个服务,它有良好的文档定义,包括它的目的是什么,它怎么同其它Web服务通信—传输协议—它们需要什么样的XML资源来完成它们的功能。”

  Bailey说,“我们创造的这些底层基础的服务好比一个软件引擎。”ZapThink的分析师认为它确实可能成为一个小的引擎。

【原创内容,版权所有,谢绝转载。TechTarget中国将保留追究其法律责任的权利。】
 
作者:Rich Seeley    
 
 
 
 
 

SOA开发

 
准备开始SOA是一种挑战。我们咨询了著名的Rolta SOA中心,它是跨国咨询公司Rolta和SOA实施支持厂商的一个软件部门。他们给出了在SOA上取得成功的几条技巧……
 
不论你是测试人员、开发人员还是普通人员,可能都熟悉预定航班和航空旅行的麻烦之处。软件测试和开发人员经常成为类似调度和迭代问题的牺牲品……
 
当运行高流量网站的应用程序时,需要按照规模进行时刻通知,开源应用服务器有时可能会比它们的商业同行更好地满足企业的需求。
 
在过去数年的架构模式中,我一直专注于与客户合作,与以网格相结合为基础,更传统的面向服务架构方法来构建应用技术。
 
David Chappell是Oracle副总兼首席SOA技术专家,他集中研究利用SOA环境中的网格的架构模式。他是《企业服务总线》的作者,在软件行业有超过20年……

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录