QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

新兴的行业 SOA 的最佳实践

  • 2010-03-13
  • 本文字数:2282 字

    阅读完需:约 7 分钟

根据 Larry Pizette,Salim Semy,Geoffrey Raines 和 Steve Foote 等合著的 MITRE 新白 皮书,以下几个方面是成功的 SOA 实施的最佳实践:

  • 判断 SOA 是否是最好的选择,根据白皮书: > 虽然 SOA 能够带来重用、敏捷及松耦合等好处,然而这些好处却不一定总是软件架构师首选的考虑因素。

    例如,实时系统或者网络限制的分布式系统,SOA 可能就不是合适的架构选型。

  • 从解决业务及运维中的挑战来开展 SOA 活动,为了使企业能够完全收获 SOA 实施带来的在时间及成本上的节约,它关注的应该是解决业务问题而非只关注技术。 > 如果企业的 SOA 采用是由解决业务问题而驱动的,并与之对齐,那么企业将会看到共享的服务,业务敏捷,和简化的整合带来的好处。

    作者们给出了一组 SOA 实施的工业案例,在这些案例中,都对业务目标进行了很好的定义。

  • 将服务用于支持关键的业务流程的步骤,SOA 主要的价值主张之一就是通过提供服务并实现能被多个业务流程公用的关键能力来降低 IT 冗余度。 > 通过关注跨企业使用的业务流程步骤,服务的重用就自然变成架构的产出之一……将服务定位在合适的业务流程级别是非常必要的(如,服务所 包含的能力范围),这样它们就能被轻易地映射到业务流程步骤中。

    作者们认为,服务的一个重要特征是松耦合,它能在对服务进行修改时带来灵活性。白皮书在最后还谈到了服务契约规范化以及服务可视化,这通常是通过服务注册实现的。

  • 检查你的数据, 这意味着 SOA 不会解决你的数据问题,却会把它们暴露出来。SOA 带来灵活性的一种途径是实现业务和数据间的解耦。这通常会导致创建数据服务,由它们提供跨企业的通过服务对数据的访问。但是,作者们提醒到, > 实施 SOA 本身不会解决数据问题。在 SOA 让数据更易于访问的同时,因为数据质量、可用性以及不同社区在词汇上的差异,它依然可能是不可用的…… 缺乏对数据的重视可能会损害 SOA 实施所带来的价值。

    作者们认为,在 SOA 实施中成功地融入数据需要:定义数据语义,用于保证在服务消费者和服务提供者之间数据交换的含义一致性;数据质量,用于消除冗 余,不一致性或失效的数据及数据可用性……提供能够支持异构的,或可能是不可预知服务消费者集合的的跨网络的分布式的数据服务。

  • 开始于一小点,学习并发展,白皮书的作者们认为,SOA 项目失败的主要原因之一是不合理的范围。 > ……架构师们往往希望把他们最初的 SOA 项目变成是整个企业范围的工作,即便从某个业务场景来看这并不合理……采纳 SOA 时,最好从一小点开始,学习并发展。递增的方法允许我们在实施大范围的 SOA 项目之前收集经验和教训;它可以最小化业务风险并能递增地收获回报。然而,在界定 SOA 工作范围时,至关重要的几个方面是:解决有意义的业务问题、关注架构的检验、清晰地描述期望的产出以及对成功的评判尺度,还要吸取经验教训,以备在将来的工作中使用。

    白皮书的作者们基于对行业的研究,建议从试验性 SOA 开始,解决具体的业务问题并定义清晰的业务和架构成功的准则。他们还建议要吸取经验和教训,并在开展下一个 SOA 项目之前把学到的经验教训传授给企业的其他人员。

  • 要有远见,即便从很小的 SOA 开始,追求长期的 SOA 远景也是非常重要的。 > 今天构建的 SOA 的结果可能是面向某个特定服务消费者的耦合服务,可能是系统间两两互联的一些通道。此外,缺乏对将来或者不可知的使用的计划,SOA 可能无法满足将来的服务需求。因此,在 SOA 实施中,设计时应该考虑到将来可能的需求发展。SOA 的架设应该能支持扩容和扩展,既要包含 SOA 部署的范围的扩展也要包含需求的扩展。

    作者们认为,确保远见的主要步骤包含:服务管理(通过监控),由它提供管理目标是否被很好地实现的信息,它还辅助定位问题及解决问题;确保服务实 现的延伸性……包含基础设施,使能服务交互,可扩展部署及测试活动;创建合适的安全基础设施等。

  • SOA 的关键组件之一是治理的保障. > 对企业范围内的 SOA 采用中所必需的变更的成功实施需要政策和流程的参与,这主要都是受业务需求驱动的。企业对治理的保障对 SOA 项目的成功是至关重要的。

    白皮书中描述的治理的主要方面包括:架构——设立一个最低限度的约束集合来确保服务实施的一致性;基础设施——建立政策来确保基础设施平台(包 括消息传输,安全和其他工具服务)在所有项目中都是标准的;信息——定义数据所有权、建立依附于企业所选的数据标准的政策及方针、设立政策来保障 数据质量度量尺度的遵守等。服务编目——建立政策保证服务声明周期的一致性、策划业务及工具服务、确保开发服务时恰当地利用了现有的企业应用。

  • 设定投资回报预期, 基于行业研究,作者们指出: > ……尽管节约开支是采用 SOA 的主要动机之一……然而 SOA 采用的一个根本的挑战是,考虑到过高的学习曲线、技术技能和熟悉程度的缺失、成熟行 业标准的缺失、以及用户企业管理能力的缺失(比如,治理)等情况,如何决定投资 SOA 来制定整体的 SOA 实施。一个企业要施行 SOA 方法,就应该对需要进行多少投资以及投资回报有理性的预期。

    他们强调,与传统的基于应用实施相比,最初的 SOA 实施几乎总要更昂贵一些,而且成本的节约并不会在企业的每个部门发生。在他们看来,大部分成本节 约都是长期的,并且会反映在 SOA 提供的组织敏捷以及共享信息的能力上。此外,服务重用将带来维护成本的降低。

虽然白皮书相当高层,但是,它的确强调了大部分重要的 SOA 关注点。对于正在考虑进行 SOA 实施的人们,它可以的是一个很好的指引,对与 SOA 执行者 的,它可以作为一个提醒——SOA 不仅关心很酷的技术,还关心架构,业务和投资回报等。


查看英文原文: Emerging Industry SOA Best Practices

2010-03-13 08:402518
用户头像

发布了 184 篇内容, 共 80.5 次阅读, 收获喜欢 8 次。

关注

评论

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

用300行代码手写1个Spring框架,麻雀虽小五脏俱全

Tom弹架构

Java spring 源码

爆肝30天,肝出来史上最透彻Spring原理和27道高频面试题总结

Tom弹架构

Java spring 源码

三位一体,网易智企的融合与进击

ToB行业头条

人工智能(NLP)|社交网络中的网络表示学习技术研究

索信达控股

人工智能 算法 网络结构

seata分布式事务AT模式介绍(二)

恒生LIGHT云社区

分布式 分布式事务 seata

基于DataX的数据同步(下)-应用DataX进行数据同步

恒生LIGHT云社区

数据库 数据同步 DataX

接口文档自动更改?百度程序员开发效率MAX的秘诀

百度Geek说

百度 前端 工具 后端 软件开发

腾讯云容器安全获得云安全守卫者计划优秀案例

腾讯安全云鼎实验室

容器安全

网易有道项目实践技术分享合集

有道技术团队

技术分享 网易有道 技术专题合集

2022 年你必须知道的 Serverless 云产品

开源之巅

Serverless 云开发

恒源云(GPUSHARE)_云GPU服务器如何使用SpaCy?

恒源云

gpu 服务器 自然语言

Dubbo 框架学习笔记十七

风翱

dubbo 12月日更

一次完整的渗透测试&仅供学习研究

H

黑客 网络安全 渗透测试·

千万级日志回放引擎设计稿

FunTester

性能测试 测试框架 FunTester 流量回放 GOREPLAY

域名基本信息查询小技巧

喀拉峻

网络安全 安全 信息安全

How old are you | 尚硅谷大数据之Canal视频教程

编程江湖

大数据 canal

一文带你了解数据库安全基础

坚果

数据库 28天写作 12月日更

使用Docker Configs存储配置信息

yombo

Docker Docker Swarm

30个类手写Spring核心原理之自定义ORM(下)(7)

Tom弹架构

Java spring 源码

用EasyRecovery恢复手残误删的文件

淋雨

EasyRecovery

Spring框架基础知识(03)

海拥(haiyong.site)

28天写作 12月日更

助车企升级,旺链科技与南方电网、联想等名企同斩获「创新案例奖」

旺链科技

区块链 产业区块链 供应链金融

谈谈Golang的同步等待组

恒生LIGHT云社区

golang Go 语言

社区原生的 Go Agent 即将开源

火线安全

DevSecOps IAST

模块八作业

panxiaochun

架构实战营

整理了一些JPA常用注解

yombo

Java Spring JPA

基于Gradle的Spring源码下载及构建技巧

Tom弹架构

Java spring 源码

架构训练营 - 模块三作业

伊静西蒙

揭秘字节跳动基于Hudi的实时数据湖平台

字节跳动数据平台

大数据 实时数据湖

实现一键部署与高效集群管理,SphereEx-Boot 正式上线

SphereEx

开源 开源社区 SphereEx ShadingSphere 一键安装

Apsara Stack 技术百科|标准化的云时代:一云多芯

云计算 芯片 科技 混合云

新兴的行业SOA的最佳实践_SOA_Boris Lublinsky_InfoQ精选文章