妨碍SOA项目的两个最常见问题

日期: 2013-04-10 作者:Cameron McKenzie翻译:蒋红冰 来源:TechTarget中国 英文

在设计面向服务架构(SOA)时,应用架构师最常犯的两个错误是什么?据Arnon(Manning上的《SOA模式》一书的作者)说,低水平的粒度和高水平的理解,在面向服务设计中是两个最常见的弱势。

  “人们易于把服务粒度弄错。他们不是把它做的太大就是太小。”建立适当的粗粒度,但又不是太大的SOA组件不应该是遥不可及的,同理,Rotem-Gal-Oz认为温故可以知新。“对于SOA开发你需要一种金发(Goldilocks)方法,这种方法使你创建的服务既不太大也不太小,”他说。

  Nanoservice反模式

  《SOA模式》一书中,在谈论nanoservice反模式时,Arnon Rotem-Gal-Oz解决了更小的粒度问题。“nanoservice是一种反模式,此模式中服务是细粒度的。Nanoservice是一种服务,其开销、通信、维修等远大于其效用。创建Nanoservice,经常伴随着一些错误的假设:宽带是无限的,数据分组运输成本是零,这会导致性能问题、支离破碎的逻辑,以及创建出凌驾于使用性之上的,有修复性问题的服务。”

  另外还有些什么是可能无处不在的、一定需要软件开发团队处理的问题?

  显然,这是对修饰SOA的基本原则和概念的根本性误解。“甚至更严重的一个问题是对什么是SOA的误解,”Rotem-Gal-Oz说。许多组织错误地认为,如果他们打算开发web服务,那么他们就必须服从于SOA,但事实远非如此。

  探索SOA模式和反模式

  使用Servlets、Struts或是平平无奇的老旧Java代码创建紧密耦合应用,就像创建紧密耦合服务一样容易。开发SOA方法的关键部分是,创建松散耦合组织,使之把服务边结在一起成为可能,并在某种程度上创建出新的业务流程,Rotem-Gal-Oz说。

  在Rotem-Gal-Oz的《SOA模式》一书中,讨论了三种额外的反模式服务,以及先前提到的nanoservice反模式,即结反模式(knot antipattern)、事务集成反模式和相同的老方式反模式。

  开发面向服务架构一直都富有挑战,即使是最有经验的架构师和开发人员也如此。但是对于每一个有经验的开发人员来说,都有一位有抱负的设计师,给了他们在分布式计算世界里小试牛刀的机会。为了确保分布式系统,组织要进行架构时,尽可能避免问题,Arnon Rotem-Gal-Oz的见解要铭记于心,随着开发人员正努力地学习SOA设计的基本原则,这包含要找出开发组件的金发方法,它的大小要适当。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

翻译

蒋红冰
蒋红冰

TechTarget云计算主编,主要负责云计算和虚拟化网站的内容建设。长期专注于IT前沿技术,对云计算、虚拟化、人工智能、区块链等技术都有了解;对行业趋势、市场动态有一定的洞察。

相关推荐

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • 揭秘New Relic APM技术细节

    New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响

  • 仅凭SOA和云无法解决业务数据管理风险问题

    SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。

  • 购买应用集成工具可以采取平衡做法

    购买应用程序集成工具需要好好看看你的公司需求,知道从供应商里面要寻找哪些关键功能。