CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > 技巧

SOA和组合应用软件程序

作者: Robert Schneider,  出处:TechTarget, 责任编辑: 叶江, 
2007-07-11 13:30
  组合应用程序软件与面向服务(SOA)的解决方案共享了大量普遍的东西……

  为何是组合软件程序?为何是现在?

  开发者进行了几十年的应用建设;为什么只是到了最近组合解决方案才得以接受?

  下面是一些驱动因素:

  •   传输层标准——以前在广泛应用内部协作性上的尝试,如CORBA,依赖于对于不可知的传输层协议的广泛接受性。现在HTTP(S)和TCP/IP已经得到了广泛的接受,而使能的线级基础设施也随处可见。
  •   Web服务的应用供应商支持——回望以前那些不甚好的日子,每一个应用供应商都希望提供他们自己的私有的API或是集成技术(与昂贵的咨询师的负载以喂养那些现金牛)。尽管如此,基本上这些供应商现在为他们的解决方案提供网络服务接口,使得跨系统的组合应用更容易开发。这些新的服务也帮助解决了在很多Internet时代集成中的内生的防火墙挑战。
  •   面向服务的设计原理——正如软件供应商为了简单化集成所做的,强健的面向服务的设计方法已经获得了广泛的接受。正如我在稍后所描述的,组合应用利用了很多关键的底层的面向服务的原则。实际上,大量的组织运用组合应用以突出其在投资面向服务的架构上的收益。
  •   久经考验的技术栈——在不久之后,我将引用一个面向Microsoft的的技术栈,其使组合应用的开发更加容易。在缺少这样一个栈的情况下,开发者将在何时应构建一个企业捣浆糊上承担更大的责任。
  •   HTML用户接口——最后,如果不存在简单的配置组合应用的方式,所有上述的因素将产生更小的影响。在此现代技术已经很好地帮助了我们,尤其是随着基于HTML的用户接口的上升。这些类型的前台较之以前的基于客户端的GUIs更加灵活和易于配置,因此很容易就引导其自身结合组合应用的设计。

  需要克服的挑战

  即使新的技术和设计原理不像其看起来(或是我们希望的!)那样简单和平稳。在建立组合应用的路上仍存在一些关键的阻碍,还有与之而来的如何克服他们的指导:

  •   语义协作性——当你没有任何关联孤岛数据的方式时,很难建立一个好的组合应用。围绕这个问题,许多企业组成了跨越多个信息孤岛的更高水平的网络服务。这些新的、抽象的服务将组成组合应用架构的基础。
  •   登录和许可——成功地维持单一应用的安全基础设施就足以让人敬畏。人们将惊叹于保持三个、四个或是更多同步应用的安全的想法。幸运的是,这并不像你想象的那么难。该文的稍后部分,我将介绍一些简化跨孤岛的组合应用的安全脚本的方法。
  •   潜伏期——对于很多系统和数据管理者来说,当评估一个组合应用时第一件映入脑海中的事就是他的跨孤岛性能在绩效上的影响。就如它所证明的,一个设计良好的组合应用只有很少或是没有增加的潜伏成本。实际上,假设它将节约用户和数据服务器的时间是合理的。我将即刻引用一些最好的实践。

  缺少面向服务的基础设施——应用开发者因为其假设一个成熟的面向服务的架构是必需的而放弃架构一个组合应用的数量是惊人的。正如我的关于网络服务使能的关系数据库的前些日子的文章中所说,存在很多划分面向服务的架构阶段的方法,而不需要一个主要的预投资。

  组合应用和面向服务

  你也许想知道一个用户接口驱动的解决方案如一个组合应用是如何处理面向服务的一般原则的。事实上,一个设计良好的组合应用利用、反映、而且依赖于那些已建立的设计原则,其归档于Erl的“SOA:服务设计的原则“:

  •   服务的重用性——当你不想重用一个组合应用(因为其是为了一个特定的目的开发的),你可能能重新使用底层服务的很多以获得未来的解决方案,如果不是全部。
  •   标准化的服务合约——这是你需要注意的一个地方。当一个服务仅与其他的服务交互时将会很轻率地修改一个服务合约。尽管如此,当一个用户接口(一个人在驱动它)依赖于服务则是另一个故事。
  •   服务松散耦合——设计得最好的组合应用以集成工具的形式服务,将松散耦合服务的集合分组为一个有意义的、业务驱动的解决方案。
  •   服务抽象——理想地,你将能组合或是聚集你的业务逻辑为一套高间隔粒度服务,接着组合应用将利用它。另一个选择是编码这些逻辑为组合应用自身,其将使其他应用对其的重用比你想像的困难。
  •   服务的组合能力——从定义上来说,一个组合应用作为组合粒度服务的集合为一个定义良好、面向用户的解决方案的结果。
  •   服务自治——当驱动一个组合服务的核心服务成为自动化,应用本身服务于集合这些服务为一个价值增值的包,其提供孤岛间的语义内部协作性。
  •   服务无国界——只读解决方案是一个组合应用的典型开端。因此,这些应用在设计上是无国界的。因为开发者开始架构可修改本地化孤岛中信息的应用,他们将依赖于底层服务的国家维护能力。
  •   服务的发现能力——从用户的角度来说,这稍微有些不相关的,因为他们将与已经架构的解决方案进行交互。尽管如此,用于建立一个组合应用的开发工具将利用这些能力。

  现在你已经决定配置一个组合应用以解决你的最初集成体哦啊站,在你开始你的旅途之前还有一些事情必须铭记于心。

共4页。 9 1 2 3 4 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i