【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

Open Group 的 SOA 资料卷

  • 2009-05-19
  • 本文字数:1416 字

    阅读完需:约 5 分钟

Open Group 组织刚刚发布了 SOA 资料卷,这是 Open Group 在对 SOA 设计与实现标准化过程中的一个缩影。这卷书中涉及了许多方面,从基本的 SOA 定义到 SOA 架构以及其与企业架构的关系,到 SOA 治理等等。

该书将 SOA 定义为“一种支持面向服务的架构风格”。如这本书所定义的,服务的主要特征是:

  • 是对一个可重复的有着特定结果的业务活动的一个逻辑表示(例如,检查消费者帐户;提供天气数据,整合钻井报表)
  • 是自包含的
  • 可由其它的服务组成
  • 对服务的消费者而言是“黑盒”

而 SOA 架构风格最独具一格的特点是:

  • 它基于服务的设计-反映了现实世界的业务活动-来组成企业(或企业间)的业务流程。
  • 服务表示利用业务描述来提供内容(例如,业务流程,目标,规则,策略,服务接口以及服务组件)以及使用服务编配来实现服务。
  • I 它对基础设施提出了独特的需求-它推荐使用开放标准来进行实现以保证互操作性与地理位置的透明。
  • 实现是环境特定的-它们由上下文所约束和支持,并且其描述必须在此范畴内。
  • 它对服务表示与实现提出了更高的治理要求。
  • 它还需要一个“石蕊试验”,以决定是否是“良好的服务”。

该书还定义了如下 SOA 的主要构建元件:

  • 服务 > …一个可重复的有着特定结果的活动。一个服务有一个提供者,一个或多个消费者,并产生对消费者有价值的效果。
  • 业务流程 > …是一个关系到企业业务使命的活动,并且以定义好的可重复的方式被执行。SOA 的软件服务支持企业的业务流程。这种关系可以并且应当是相辅相存的。分析业务流程是认定软件服务的主要方式。另一方面,存在合适的软件服务,就能够支持开发新的业务流程,满足新的业务机遇。
  • 人工执行者 > 人工执行者在当业务流程被建模的时候出现,同时在模型中也会展示系统的其它方面,比如管理与安全等。
  • 事件 > … 事件在当业务流程被建模的时候出现,同时在模型中也会展示系统的其它方面,比如管理与安全等。
  • 服务描述,契约,和方针 > SOA 当中的服务有一个重要的特性,它们的描述中清楚的陈述了它们会做什么以及如何与它们交互。一个服务契约可能是对于服务将会遵从于描述的一个隐式协议,或者一个更加正式的协议,可以被记录于签署的内部企业文档或者企业间执行的一个法定的合同。一个服务方针是服务提供者提供服务时计划遵循,或者服务消费者的应当遵循的一系列行为。服务描述,契约和方针构建元件在模型当中的出现展示了服务是如何被消费的。在 SOA 当中,这是系统实现和运营非常重要的一方面。
  • 服务组合 > 服务组合是一个提供商的概念。它不是关于服务是做什么的,而是关于服务如何执行的。服务可由其它的服务来组成。业务流程可由服务和其它业务流程来组成。服务组合出现在展示服务是如何支持业务流程的模型中。
  • 信息项目,数据项目,以及数据存储 > 数据可以被定义为“为适于通讯,理解或处理,对信息以正规化方式进行重新诠释的一种表示”…它们出现在展示服务如何被执行的模型中,展示服务如何相互集成以及与其它系统组件集成的模型中,展示架构化的系统如何处理数据在模型中,以及展示系统其它方面,比如性能,管理,安全和治理的模型中。

正如 Richard Veryard 在他的博文中所述:

SOA 资料卷中的许多思想在 SOA 的圈子里流传已久。

它们可以在诸如 CBDI 面向服务架构实践门户或者应用 SOA:面向服务架构与设计策略书中被找到。然而,就像Antony Reynolds 总结的那样,这本书“…对于启发人们关于SOA 的概念的思想来说是一个非常好的起点。值得一读。”

查看英文原文: The Open Group SOA Source Book

2009-05-19 02:281408
用户头像

发布了 133 篇内容, 共 35.1 次阅读, 收获喜欢 1 次。

关注

评论

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

第1章:初识数据库与MySQL----MySQL安装

乌龟哥哥

7月月更

@Conditional条件装配

急需上岸的小谢

7月月更

数据库每日一题---第24天:格式化部门表

知心宝贝

数据库 算法 前端 后端 7月月更

mysql进阶(四)聊聊mysql中的事务锁机制

No Silver Bullet

MySQL 7月月更

曾经辉煌一世的流媒体协议RTMP是什么样的?它能完全被取代吗?一文带您走进RTMP的世界

wljslmz

RTMP 7月月更 流媒体协议

【MySql项目实战优化】通过执行计划分析追加索引

安逸的咸鱼

MySQL 实战案例 7月月更

极限实验室上新啦,期待已久的 INFINI Console 最新的 0.3 版本正式发布!

极限实验室

elasticsearch security console infini alerting

接口测试——流程测试支持批量参数导入,测试效率直接拉满

Xd

Java 数据库 程序员 接口测试工具

zookeeper-ACL权限相关

zarmnosaj

7月月更

【愚公系列】2022年07月 Java教学课程 04-Java语言三种注释

愚公搬代码

7月月更

把项目打包成docker镜像,并发布到腾讯云?DockerHub!

为自己带盐

Dockerhub 7月月更 dotnetcore

中台建设利器-SPI插件机制

Man

中台 插件化

GNU/Linux知识库(4)- 用户 & 权限

冯亮

Linux DevOps 操作系统 GNU

用 Flutter 来一颗跳动的心

岛上码农

flutter ios 前端 安卓开发 7月月更

【愚公系列】2022年07月 Java教学课程 05-关键字

愚公搬代码

7月月更

【古月21讲】ROS入门系列(3)——客户端Client、服务器Server的编程实现+自定义服务数据编程实现

秃头小苏

ROS 7月月更

想通讯?谈钱多俗,谈ProtoBuf

怀瑾握瑜的嘉与嘉

protobuf 7月月更

JVM架构解析

沃德

Java 程序员 7月月更

Serverless模板重磅上线!多场景覆盖、小时级快速集成

最新动态

三级分类的数据表设计和构造API数据

宁在春

spring-boot 树形选择器 7月月更 菜单管理

查找——二叉排序树(二)

乔乔

7月月更

Block的底层实现

NewBoy

ios 前端 移动端 iOS 知识体系 7月月更

长安链中的加密算法

长安链

【LeetCode】前缀和后缀搜索Java题解

Albert

LeetCode 7月月更

解决问题的最佳实践路径

老张

解决问题 思考实践

【刷题记录】12. 整数转罗马数字

WangNing

7月月更

解读《深入理解计算机系统(CSAPP)》第11章网络编程

小明Java问道之路

网络编程 socket csapp intel 7月月更

【漫步刷题路】- 逆序字符串II

芒果酱

7月月更

Linux Lab 会议或直播安排与记录

贾献华

7月月更

数据库与开源的未来

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

玩转Liunx系统,看这篇文章就够了(三)

Java学术趴

7月月更

Open Group的SOA资料卷_SOA_Boris Lublinsky_InfoQ精选文章