写点什么

SOA 实现八大陷阱

  • 2007-06-08
  • 本文字数:2167 字

    阅读完需:约 7 分钟

随着 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.com www.thomaserl.com

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

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

2007-06-08 00:302162

评论

发布
暂无评论
发现更多内容

博睿数据获中国信通院泰尔终端实验室致谢!

博睿数据

正式成为CNCF的一员,我们是如何做到的 | Sermant 2024年度总结

华为云开源

微服务 开源项目 微服务治理 sermant

成功案例丨口腔保健的数字化转型:Altair 数字孪生技术助力口腔保健分析

Altair RapidMiner

AI 数字孪生 仿真 altair Radioss

巧用多目标识别能力,帮助应用实现智能化图片解析

HarmonyOS SDK

harmoyos

“全球金牌课程”3月15-16日·上海线下·CSM认证【提前报名特惠】CST导师亲授

ShineScrum

敏捷 CSM认证 CSM认证培训

怎么制作波士顿矩阵?一文读懂战略管理分析的各个方面!

职场工具箱

波士顿矩阵模型 画图软件 在线白板 办公软件 绘图软件

Metasploit Pro 4.22.7-2025012201 (Linux, Windows) - 专业渗透测试框架

sysin

加入Karmada用户组!连接全球同行共建多集群生态

华为云原生团队

云计算 容器 云原生

行业风向标|「博睿数据2024年度精选案例集——观测先锋」重磅发布

博睿数据

平台工程的未来:平台即运行时

俞凡

最佳实践 大厂实践 平台工程

IoTDB 2025 春节值班与祝福

Apache IoTDB

一起开启龙蜥之旅,上千份精美周边等你兑换!

OpenAnolis小助手

开源 操作系统 龙蜥之旅

Metasploit Framework 6.4.44 (macOS, Linux, Windows) - 开源渗透测试框架

sysin

Metasploit

数据从前端传到后端入库过程分析

能源恒观

java数据类型

社交软件红包技术解密(六):微信红包系统的存储层架构演进实践

JackJiang

网络编程 即时通讯 IM

第84期 | GPTSecurity周报

云起无垠

Apache Doris 2.1.8 版本正式发布

SelectDB

数据库 大数据 开源 数据仓库 湖仓一体

《2025春节态度报告》出炉,Soul App解读Z世代春节新风尚

科技汇

soul

AI赋能剪纸艺术,剪映助力多地文旅点亮新春

极客天地

评测!Google Gemini AI 安全评估技术解析

云起无垠

Nexpose 7.3.2 for Linux & Windows - 漏洞扫描

sysin

Nexpose

📊Univer Go : 通过AI一键翻译电子表格单元格内容,轻松提效

梦数技术团队

Python JavaScript 前端 Excel spreadsheet

SOA实现八大陷阱_SOA_Thomas Erl_InfoQ精选文章