写点什么

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:241989
用户头像

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

关注

评论

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

荣耀互联对外开放,赋能智能硬件合作伙伴,促进全场景生态产品融合

荣耀开发者服务平台

【web自动化测试】Playwright快速入门,5分钟上手

和牛

自动化 测试 playwright Python. 8月月更

【iOS逆向】某车之家sign签名分析

小陈

iOS逆向

容器化 | 在 NFS 备份恢复 RadonDB MySQL 集群数据

RadonDB

MySQL 数据库 容器化 Kubernetes 集群 备份 & 恢复

开发一套高容错分布式系统

JAVA活菩萨

Java 程序员 后端 java程序员 java编程

基础到高级涵盖11个技术,Alibaba最新出品711页Java面试神册真香

JAVA活菩萨

Java 程序员面试 大厂技能 秋招 大厂面经

全新出品!Github总榜排行第七的SpringCloud生态全栈笔记我粉了

JAVA活菩萨

Java 程序员面试 大厂技能 秋招 大厂面经

荣耀发布开发者服务平台,智慧生态合作提速

荣耀开发者服务平台

字节二面被问到mysql事务与锁问题,我蚌埠住了

程序员小毕

Java MySQL 数据库 程序员 面试

基于 eBPF 的 Kubernetes 可观测实践

阿里巴巴云原生

阿里云 Kubernetes 云原生 可观测

重新审视分布式系统:永远不会有完美的一致性方案……

JAVA活菩萨

Java 程序员 java程序员 java 编程

浅谈运用低代码技术如何实现物流企业的降本增效

王平

如何模拟后台API调用场景,很细!

Liam

前后端分离 开发 Postman API 前后端协作

RabbitMQ(五)死信队列

JAVA活菩萨

Java 程序员 后端 java程序员 java编程

阿里出品Spring Security王者晋级笔记,并附上源码解析

冉然学Java

编程 spring security java; Spring Boot CLI 源码、

《机器学习理论到应用》电子书免费下载

计算机与AI

Python 机器学习 数据科学

《机器学习的随机矩阵方法》

计算机与AI

Python 机器学习 数学

WEB前端面授培训课程

小谷哥

web前端培训课程哪个比较好?

小谷哥

精品!阿里P7爆款《K8s+Jenkins》技术笔记,高质量干货必收藏!

冉然学Java

jenkins java; 技术笔记 编程‘’ #k8s

力拓信创生态,博睿数据多款产品获得东方通与达梦数据库产品兼容互认证明

博睿数据

可观测性 智能运维 博睿数据 东方通 达梦数据

安装失败怎么办

和牛

测试

【注册荣耀开发者】赢【荣耀70】手机

荣耀开发者服务平台

开发者 手机 活动 应用 荣耀

移动平台助力推进智慧型科研院所信息化建设

BeeWorks

JWT主动校验Token是否过期

源字节1号

软件开发 后端开发

OpenInfra Days China 2022|SelectDB与你共享 Apache Doris 在互联网广告业务中的实践

SelectDB

MySQL 数据库 数据仓库 数据湖 Doris

框架整合(二)- 使用Apache ShardingSphere实现数据分片

大菠萝蜜

MySQL 8月月更

【Android逆向】rpc调用某安App的X-App-Token签名函数

小陈

逆向技术

小程序+自定义插件的混合模式

Geek_99967b

小程序

从云计算到函数计算

阿里巴巴云原生

阿里云 Serverless 云原生 函数计算

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