`
isiqi
  • 浏览: 16349647 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

SOA实现八大陷阱

阅读更多

作者 Thomas Erl译者 林伯仲 发布于 2007年6月8日 上午12时30分

社区
SOA
主题
故事和案例分析

随着SOA渐成IT潮流, 越来越多的SOA项目启动了。有些项目彻底失败了,有些项目则勉强成功了。如何吸取这些失败项目的教训,并形成自己规划SOA路线图所需的远见与策略,这将是未来SOA项目成功实现的关键。在此我们收集了自去年以来所注意到的SOA实现八大陷阱,希望能为各位实现SOA提供借鉴。

8 与SOA 市场的脱节

在IT市场各领域中很少有像SOA 领域如此变化多端。任何SOA计划均需考虑市场的现状和趋势,以决定现在投资哪些平台技术,哪些则可以等待。

针对基于Web 服务的SOA 实现,有许多产品和平台技术可供选择。由于许多用户喜欢评估和选择不同的技术实现路线,SOA市场竞争也必将愈演愈烈。从Web服务的角度来说,一个考虑的技术市场因素则是产品提供商如何对待现在正处于发展阶段的各种Web 服务规范。厂商多样化及其各种平台与开放标技术的靠拢是SOA 实现计划的关键考虑,但这些经常被忽视,并导致错误的决策与投资。

7 缺少Web 服务安全计划

很多基于Web 服务的SOA实现倾向从小项目开始,其Web 服务技术的应用程度也就往往局限于特定环境下开发人员及架构师对该技术框架的了解和掌握程度。一旦Web服务技术在占据了IT 架构的主导作用后,对信息安全和共享服务的访问控制也就提上了日程。Web服务安全框架建立了一套普遍认可的安全模型,这种模型基于一系列规范并最终成为面向服务应用及企业IT架构等各个层面的重要组成部分。

即使你的平台供应商未能提供足够的Web服务安全支持,甚至你现在基于SSL 的实现也符合当前需要,我们还是提倡密切关注潜在的变化与需求。任何缺乏Web服务安全考虑的计划必将导致重构甚至二次开发。如果只在急剧增加服务应用数量后才考虑Web服务安全问题,这种问题将显得更加严重。

6 缺少服务治理计划

在采纳SOA的过程中,企业组织必将面临如何控制和管理,以及演变不断增加的服务应用数量。当一个企业加快重用服务的开发时,并相应迅速增加服务应用的共享时,这种问题将更加突出。SOA治理对企业组织的许多方面提出挑战,如资源分配、IT人员的角色、内部标准、流程及项目周期。缺少SOA治理计划必将造成任何大规模SOA实现的失败。

5 缺少对SOA 性能需求的理解

松耦合是需要付出代价的。以Web 服务为基础的SOA引进数据处理的多层结构并由此带来了额外的性能开销。当SOA大规模应用时,基于消息的通讯流量相应几何增长,此时性能问题必将突显。因此,任何成功的SOA实现需要预先正确理解各种IT应用的性能需求及基础架构性能局限。这意味着对消息处理能力的大量测试,密切注意服务设计,以在各种影响性能的因素之间取得平衡。

4 缺少对XML数据格式的总体考虑

XML是基于Web 服务的SOA 实现的核心。关于XML 的规范是Web 服务规范标准的基础。许多SOA实现过于关注服务间的数据转移,而忽略了对数据结构和效验的设计。这种忽略必将导致XML数据格式层的不恰当实现,由其缺陷所带来的影响将波及SOA 应用的各个层面。

3 缺少迁移计划

缺乏迁移计划会大大减少SOA部署的成功机会,因为许多服务的部署与设计将导致基础架构的重新考虑。迁移计划允许公司组织有控制地阶段性实现SOA,并从技术,架构,及组织层面进行计划。

典型的用SOA迁移计划包括影响分析(SOA对现有资源、流程、特殊标准及技术的改变程度等),迁移架构(SOA实现各阶段的架构及其最终目标架构),以及机会与风险分析(考虑Web及相关技术的前景与风险机会)。

2 缺少关于SOA的内部标准

真正的SOA 实现需要制定并遵循一套严格的内部设计标准。缺乏标准将导致许多问题,包括不兼容的数据格式和不规则的服务接口。一套严格的内部标准可以确保封装后台逻辑的设计与服务交互的统一性。

1 以传统的分布式架构实现SOA

SOA 实现的首要陷阱是以传统的分布式架构实现面向服务的应用,并认为SOA已经实现了。SOA 不是 CORBA + XML,更不是ASP.NET+WSE。 面向服务与面向对象不同,面向对象的组件逻辑也远未能适合面向服务的应用环境。SOA是一种完全不同的基于面向服务的架构模式,一种不同的设计范式。正确理解这些不同之处是实现SOA的关键所在。

注:本文中的一些概念来自《ervice-Oriented Architecture: Concepts, Technology, and Design》一书,作者为Thomas Erl,由Prentice Hall/Pearson PTR出版。更多信息,请访问www.soabooks.com

关于作者

Thomas Erl(terl@soasystems.com)是SOA领域的畅销书作者。他的第一本书《Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services》,提供了确立SOA架构的战略指导。第二本书《Service-Oriented Architecture: Concepts, Technology, and Design》是业内第一本构建SOA的“How-to”指南,涵盖了面向服务分析和设计的上手指南,以及对面向服务原则的全面概括。

另外Thomas还是SOA Systems公司的创始人,关注于SOA咨询、计划、培训服务等。SOA Systems在SOA领域里的面向服务研究和对主流SOA方法的发展都做出了突出的贡献。更多信息,请浏览www.soasystems.comwww.thomaserl.com

查看英文原文:Top 8 SOA Adoption Pitfalls


译者简介:林伯仲, IONA科技公司亚太研发中心研发经理。他和他的北京同事目前致力于SOA基础架构软件研发,并共同参与多个SOA及Web服务开源项目,包括Eclipse STPApache CXF等。

分享到:
评论

相关推荐

    基于WebService的SOA实现技术研究

    SOA是一种设计方法,它将业务应用设计为服务的集合,这些服务可以独立地进行更新和重用,而WebService是一种实现SOA的技术。WebService具有中立的技术标准、松散耦合性和通用协议规范,是实现SOA的主流技术之一。...

    实现SOA的相关技术

    ### 实现SOA的相关技术详解 #### 一、引言 随着信息技术的发展,服务导向架构(Service-Oriented Architecture,简称SOA)逐渐成为构建灵活、可扩展的企业级应用的重要方式之一。SOA的核心思想是将不同的业务功能...

    简析一种SOA动态实现框架

    面向服务架构(SOA)常常被奉为解决上述业务挑战的一种可行的解决方案。...开发未来应用程序和业务流程的推荐方法是采用正式的 SOA 实现框架,该框架是动态的、灵活的和可伸缩的,足以满足变化的和复杂的业务需求。

    rpc,soa实现例子

    如果需要深入理解RPC和SOA的实现,你需要查看这个文件中的具体内容,包括服务接口定义、客户端和服务端的交互逻辑、以及可能的配置信息。这将帮助你了解在没有RPC注册的情况下,如何实现客户端和服务端的通信,以及...

    用SOA实现ESB

    先描述了SOA和ESB的概念和结构, 再详细介绍了怎么用SOA来实现一个ESB,并对服务Router,Broker,off-the-bus service,Exposed ESB Gateway有详细的说明.

    SOA方法实现货币实时兑换

    总结起来,"SOA方法实现货币实时兑换"涉及的关键知识点包括:SOA架构原理、服务设计与实现、接口定义、通信协议、服务注册与发现、ESB、服务高可用性策略以及实际代码实现。这些内容对于理解如何构建一个分布式、可...

    SOA实现分布式应用

    **分布式应用与SOA实现** 在当今的互联网时代,分布式应用程序已经成为企业级系统构建的核心模式。分布式应用允许将复杂的业务逻辑拆分成多个独立的服务,这些服务可以分别部署、扩展和维护,极大地提高了系统的可...

    SOA的关键技术的研究与应用实现

    ### SOA的关键技术的研究与应用实现 #### 引言 随着中国经济的快速发展,特别是企业规模的迅速扩大,信息化的需求也在持续增长。为了适应激烈的市场竞争,企业必须不断优化内部管理流程,提升运营效率,这就需要...

    SOA.zip_SOA optical_SOA 光_SOA 半导体_VPI SOA仿真_光放大

    **SOA光学与半导体光放大器** 在信息技术领域,特别是在光纤通信系统中,半导体光放大器(Semiconductor Optical Amplifier,简称SOA)扮演着至关重要的角色。SOA是一种利用半导体材料(如镓铝砷化物,GaAs/AlGaAs...

    基于SOA的设计与实现

    SOA 的理论概念 与具体实施方案基于SOA的设计与实现基于SOA的设计与实现

    SOA的开源实现平台

    SOA的开源实现平台,采用SOA架构。希望能帮到你。

    基于GT4的SOA实现技术.pdf

    ### 基于GT4的SOA实现技术 #### SOA与网格技术结合的重要性 面向服务的架构(SOA)是一种先进的软件设计方法,旨在解决软件重用和集成的问题。通过SOA,企业可以构建更加灵活的IT基础设施,快速构建开放、模块化且...

    用SOA的方式实现加法

    本教程以"用SOA的方式实现加法"为例,旨在帮助初学者理解SOA的基本原理和实施步骤。** 在SOA中,核心概念是服务,它代表一个可执行的业务操作,具有明确的边界和自包含的功能。例如,我们的"加法"服务就是一个简单...

    一个SOA框架的设计_实现和应用

    SOA通过将原有的应用和资源转变为可共享的标准服务,打破了”信息孤岛”,实现了对原有系统的复用、组装和集成。SOA的目标是为企业构建一个灵活,可扩展的IT基础架构来更好地支持随需应变的企业业务。

    SOA与Java 用Java技术实现面向服务_(加)埃尔著.pdf

    《SOA与Java:用Java技术实现面向服务》的几位作者都是业界的领袖,ThomasErl更是SOA领域的领军,本书详细的介绍了使用Java技术实现SOA的方法,对于想要学习SOA的Java程序员,以及想要使用Java实现设计的SOA从业者...

    SOA 实现企业IT规划的好方法

    面向服务的架构(Service-Oriented Architecture,简称SOA)是一种设计和规划企业IT系统的方法,旨在提升灵活性、可重用性和系统集成性。SOA不是一项新技术,而是通过将功能模块封装为独立的服务,允许不同系统之间...

Global site tag (gtag.js) - Google Analytics