阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

SOA 参考架构基础的草案已经提交,正接受公众评阅中

  • 2009-11-28
  • 本文字数:2268 字

    阅读完需:约 7 分钟

OASIS 的 SOA 参考架构模型技术委员会最近审批通过了 SOA 参考架构基础 1.0 版 (SOA-RAF)规范作为公众评阅的委员会草案。

SOA-RAF 基于 SOA 参考模型(SOA-RM)并定义了一些独立于 SOA 实施过程中所使用的具体技术、协议以及产品的抽象架构元素。

该参考架构基础并非实施 SOA 系统的全景蓝图,也不是指明了实现 SOA 系统时所需的所有技术的技术路线图。然而,它定义了很多关键的概念和组件,它们在任何精心设计的 SOA 系统中都应该出现。为了在实践中使用,构造和管理 SOA 系统,还要做许多其他的设计决定以及技术选择。

SOA-RAF 定义了 SOA 的若干抽象实现,它关注那些能够让 SOA 系统使用,实现并管理起来的元素以及它们之间的关系。其背后的重要假设是,SOA 系统应该包含:

  • 分布在不同所有者边界的资源;
  • 人员和系统互相交互,它们亦是跨越所有者边界的;
  • 跨越所有者边界的安全,管理和治理;
  • 人员和系统之间的交互主要是可靠的(适合于计划中的使用及目的)信息交换。

所以,SOA-RAF 不是把 SOA 看成一个独立又复杂的机器,而把它看成一个生态系统:一个由人,机器和服务共同栖息的空间,他们既在实现各自的目标,又在实现整个大社区的目标。

定义 SOA 生态系统的主要原则有如下几条:

  • SOA 是行为独立的参与者进行价值交换的媒介;
  • 参与者(及其利益主体)有理由取得 SOA 中可用资源的所有权;
  • 参与者的行为及性能受到约定的(从一系列策略和契约中捕获的)规则的制约。

SOA-RAF 分三个视角,正好符合三大主要观点,并反映了对关注点的划分。

生态系统视角的观点关注的是人们如何使用 SOA 系统开展他们的业务;SOA 参考架构实现视角的观点关注的是构建 SOA 的最重要方面;而 SOA 拥有视角的观点关心的是那些与 SOA 所有权,管理及控制相关的方面。

InfoQ 有幸邀请到 OASIS SOA 参考模型技术委员会的秘书 Francis McCabe 和主席 Ken Laskey 共同探讨 SOA-RAF。

InfoQ

SOA-RAF 是什么?

FM

它是 SOA 泛型的架构描述。即是对那些让 SOA 生态系统运转起来的关键的概念及其它们之间的关系的描述。

InfoQ

SOA-RAF 的目的是什么?

KL

RM 谈到了一些概念和它们之间的关系,RAF 标明了那些将出现在 SOA 解决方案中的架构元素。但是具体架构仍需要架构的设计,因为你不能从基于 RAF 建立解决方案,但是有了 RAF 的指导,RAF 元素将出现在具体架构中。

InfoQ

SOA-RF 和 Web 服务,REST 服务,SOAML 的关系是怎样的呢?

FM

与具体的技术(如 Web 服务,REST 服务)相比,SOA-RAF 在目的和范围上站在一个更高的层次。我们明确表明要避开具体任何具体的技术。

然而,如果你想知道如何应用 Web 服务,那么 RAF 可以提供重要的指导意见。它表明了使用和混合服务、安全、治理等领域的关键需求以及一个实际的 SOA 生态系统中需要表示的社会结构。

SOA-RAF 没有涉及到的一个方面是,用于构建解决特定问题的 SOA 生态系统时的具体指导。为此,SOAML 是描述实际系统中的具体问题的优秀工具的代表。

InfoQ

SOA-RAF 包含哪些方面?

FM

SOA-RAF 包括三个主要部分或视角。第一个部分的重点是从参与人员以及他们与驱动 SOA 生态系统发展的技术之间的关系的角度,阐述了什么是 SOA 生态系统。第二部分强调了构建 SOA 生态系统的一些关键元素;包括描述的重要性,交互以及策略的重要性角色等。第三部分关心的是如果 SOA 生态系统的拥有问题,这部分强调了 SOA 生态系统的治理、SOA 系统的管理、在一个永不重启的大型系统中测试意味着什么,以及 SOA 生态系统中关键的安全方面。

InfoQ

什么是联合动作(Joint Action)?

FM

为了交付服务,服务消费者和提供者之间的交互是必要的。在 SOA 生态系统中参与者间的交互是被自动仲裁的。这些参与者可能位于不同的所有域中,为了参与者之间的交互,他们必须同时即要单独行动又要行动一致。单独行动指的是交互信息的发送和接收,而行动一致指的是二者都是交互的一部分。

联合动作是任何需要两个或多个参与者参与的动作。一个简单的例子是信息通讯:每一次通讯都需要一个演讲者和一个听众。(尽管任何一方都可能不止一个)。没有双方的参与,就没有通讯:它在本质上本是一个联合。

事实上,在服务提供者和消费者双方的交互中,在很多层面上都应用了联合的概念。在最底层,消息发送和接受自然是一个联合。上一个层次,通讯过程中仲裁的动作(开户,广播紧急信息,购买及销售等)在本质上也是联合的。再上一层,动作经常带入了参与者的社会状态。签定契约修改了参与者的状态:做出了相应的承诺,策略也因此形成。这些社会动作在本质上也是联合的。

InfoQ

该草案和前一个有何区别?

FM

该草案文档中进行了很多优化,特别是生态系统视角做了最多的优化工作。然而,我们也加入了很多重要的部分,如治理和测试。另外,规范的名字本身也有所改变,其增加的“基础”反映了在 SOA 系统的世界中肯定了我们的工作及他人的工作之间的关系。

InfoQ

下一步工作是什么?

FM&KL

由于 RAF 已经非常完善,所以需要更进一步的领域有限。尤其是治理,已经特别完善了。但是我们需要确定如何优化管理的部分,并决定是否将它整合到治理中去,或像现在的草案一样让它独立存在。自从上一个草案开始,在生态系统视角上已经看到了很多工作,并且还有一些重要的讨论要完成。然而,委员会相信目前的工作设计的已经足够充分了,所以这绝对是值得读者提出自己的见解的好机会。

公众评阅从2009 年11 月14 开始,到2010 年1 月13 日结束。这篇草案旨在进一步加强对SOA 架构原则的理解并提供一个SOA 的实施蓝图。

查看英文原文: A Reference Architecture Foundation for SOA Draft Was Submitted to Public Review

2009-11-28 09:241662
用户头像

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

关注

评论

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

从源码中来,到业务中去,React性能优化终极指南

有道技术团队

大前端 React 有道精品课

AI医疗发展中的机遇与有效监管

CECBC

数字人民币与区块链的区别与联系

CECBC

亚马逊云开发者 Meetup 又双叒叕来了,您报名了吗?

亚马逊云科技 (Amazon Web Services)

开源数据库

教你用User Story设计BI驾驶舱

薄荷点点

数据产品经理 用户故事地图 产品需求

Django 之视图篇

若尘

django 视图 Python编程 5月日更

达利欧:我持有一些比特币,美元重回1971年,现金就是垃圾

CECBC

吾日三省 - DAY 16

Qien Z.

5月日更 半年总结

另一种总结的方式

Nydia

学习

人生算法:重新启动的精神装置

石云升

读书笔记 思维模型 5月日更

Dubbo 序列化

青年IT男

dubbo

【Flutter 专题】124 日常问题小结 (三) 自定义 Dialog 二三事

阿策小和尚

5月日更 Flutter 小菜 0 基础学习 Flutter Android 小菜鸟

集群镜像:实现高效的分布式应用交付

阿里巴巴云原生

数据库 容器 开发者 云原生 存储

悟透前端:加深Javascript变量函数声明提升理解

devpoint

变量声明

并发王者课-青铜6:借花献佛-如何格式化Java内存工具JOL输出

MetaThoughts

Java 多线程 并发 并发王者课

Qemu KVM Guest增强简述

焱融科技

云计算 虚拟机 高性能 存储 qemu

要想成为牛人,推荐学习哪种编程语言?

实力程序员

☕️【Java 技术之旅】从底层分析LockSupport原理机制

洛神灬殇

Java JVM lock锁 5月日更 LockSupport

面向WEB开发的Docker(四):启动MySQL数据库

devpoint

Docker

这可能是中文互联网第一本系统性讲解Terraform的入门教程

大可不加冰

云计算 IaC Terraform HashiCorp 不可变基础设施

用Terraform申请Letsencrypt证书

大可不加冰

云计算 证书 IaC Terraform HashiCorp

安全专栏加餐

escray

学习 极客时间 安全 5月日更 安全攻防技能30讲

Terraform中使用prevent_destroy搭配override文件防止误删资源

大可不加冰

云计算 基础设施即代码 IaC Terraform HashiCorp

如何通过别名扩展Git

kenny

bash git git扩展

谋而后动:解读数仓计划生成中行数估算和路径生成的奥秘

华为云开发者联盟

计划 数仓 GaussDB(DWS) 查询语句 估算

2021百度之星报名开启 特设“小星星”奖项鼓励少年AI人才

百度大脑

AI 百度之星 少年

并发王者课-青铜5:一探究竟-如何从synchronized理解Java对象头中的锁

MetaThoughts

Java 多线程 并发 并发王者课

聊聊微服务治理的落地问题 | Geek大咖说第二期

百度Geek说

微服务 自动化

网络攻防学习笔记 Day26

穿过生命散发芬芳

5月日更 网络攻防

出于信仰,我去考了一个证

大可不加冰

云计算 IaC Terraform HashiCorp

2021年爆火的低代码开发技术,对企业而言有什么好处?

优秀

低代码

SOA参考架构基础的草案已经提交,正接受公众评阅中_SOA_Boris Lublinsky_InfoQ精选文章