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

SOA 与云计算有多大关联?

  • 2009-09-04
  • 本文字数:1705 字

    阅读完需:约 6 分钟

Joe McKendrick 已发布一篇题为“经验总结:SOA 和云面临的挑战和机会”的会议纪要,参会人员由 Phil Wainewright,David Bressler,Ed Horst 和 Joe McKendrick 等人组成。

讨论从 Phil Wainewright 的问题开始:

你们每个人是如果定义云的,如果它和 SOA 存在区别的话,那么最关键的区别又是什么?

Joe McKendrick 认为:

……过去的一年太令人惊叹了,这些概念一齐汇聚到大家面前,这里我只谈 SOA 和云。SOA 在 90 年代初就已经来到人们周围了,而且很过公司正进行着 SOA……现在,我们更多地看到人们在强调向云的转型……我认为这二者的主要区别是:SOA 是一种架构,是底层架构,是人们创建、管理、编排服务的方式。而云是一种技术,从一方和另一方之间交付这些服务是通过它实现的。但是我认为,目前正处于这样一个阶段,你不能只有其中之一,而应该二者兼备。

Phil Wainewright 继续问道:

可否这么简单地说:云就是 SOA,只不是过它是一种以面向 Web 方式实现的 SOA?……我这么说的意思是,因为它是一个开放的环境,而且你不知道你正在和谁进行交互,因此不得不要做所有的服务层的工作,如定义合约(服务的合约)……还有安全需求,你必须做所有的那些在受控的企业环境中不一定非要做的事情,因为在受控的环境里,你了解正在发生的事情……我认为我们在 SOA 和云之间已经建立了很多的共性。云正在做的很多事情是当初 SOA 建好后要做的事情,因此,也许我们可以继续做出这样的前提假设:云可以学习 SOA 的经验。那么,SOA 教给我们什么 ?有哪些经验教训可以让我们在实施云的过程中不再犯相同的错误。

为了回答这个问题,Ed Horst 提到了 SOA 的三个主要经验教训:

……(1)从一个具体的项目开始,这个项目要有合理的边界,并将在完成是能够对日常业务有所影响……你得需要能够经常使用的东西。(2)另一个是……避免煮沸整个大海的做法,比如在还没做任何云的工作之前,就要将所有的东西变成云……但这也不是说在做第一个项目的时候就完全不考虑最终的方向。因此,我所看到的一种更为成功的策略是混合的做法,在考虑整体架构走向的同时采取更广阔的举措,最后我们可能会花 2 年、3 年、4 年甚至 5 年的时间才能完成,但是在启动项目之后要开展一些实际可行的工作。(3)然后……管理系统,要尽早、尽可能经常地对系统进行监管。做得早的话你一般不会后悔,相反你可能经常会因为没有这么做而后悔。

Phil Wainewright 的观点是,一个包罗万象的面向 Web 的架构可以让我们统一 SOA 和云计算。他继续说到:

……面向 Web 的架构的一个特征是 REST 接口,它更加简单,因为他不需要做 SOA 相关的其他事情。这个特征也是云计算的特征,一个必要的特征,云计算追求更加“lowest common denominator”的接口(译注:在数学中,Lowest common denominator 被称为最小公分母;在计算机中,最初的意思是计算机平台的指令选择技术,当对一个程序进行编译生成可执行程序并使之可移植到其他平台上时,由于每个处理器都有自己的补充指令,所以只有使用不同处理器所共有的那些指令编译出来的可执行程序才具有最好的移植性。在这里,指得是接口定义要更通用,更简单)。

Ed Horst 认为 REST 和 SOAP 都有特定的应用场合,这取决于不同的交互类型:

如果交互本身就更加事务性,更谨慎,更业务敏感的功能,那么通常使用 SOAP 接口来进行交互。但如果是一个类似于查询和更新这种轻量级的操作,而且对业务的影响也较小,那么用户一般使用 REST 接口……这也不是说 REST 就不能用于具有事务性的场合,但是当你为了实现事务、安全、良结构的消息或者其他类似的要求而向 REST 增加一些元素进去的话,这时的 REST 看起来就很像 SOAP 了。

在今天的 IT 界“云”是一个热词,而 SOA 似乎渐渐失宠,最少在分析家的眼里是这样的。相应地,当前还有一个非常流行的假设,无论 SOA 曾有多大的缺点和困难,云计算都将改进之并能够解决这些困难。事实上,如 Joe 所说的 SOA 关心的是合理的系统架构,而云关心的是基础设施。总所周知,再好的基础设施也不能挽救糟糕的架构。所以我们应该停止对灵丹妙药的祈祷,而着手去关心最基本的工作:合理的服务架构。


查看英文原文: How Does SOA Relate to Cloud Computing?

2009-09-04 02:172179
用户头像

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

关注

评论

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

手摸手带你 在 Windows 系统中安装 Istio

万猫学社

云原生 istio windows

WindTerm:新一代开源免费的终端工具,GitHub星标6.6k+,太酷了!

沉默王二

GitHub 终端工具

五大理由告诉你为什么开发人员选择代码质量静态分析工具Klocwork来实现软件安全

龙智—DevSecOps解决方案

静态代码分析 代码静态分析 SAST工具 SAST

HDD杭州站•ArkUI让开发更灵活

HarmonyOS开发者

HarmonyOS

有多一只“手”的机器狗出没?就在昇腾AI开发者创享日·南京站

科技热闻

数据治理体系演进简介

网易数帆

大数据 数据治理 元数据 数据标准

关注微信公众号,自动登陆网站

源字节1号

微信小程序

不是吧?还有人不会定位线上MySQL慢查询问题?

Java永远的神

Java MySQL 数据库 程序员 面试

自从用了 Kiali 以后才知道,配置 Istio 的 流量管理 是如此容易

万猫学社

云原生 istio envoy kiali

这份阿里强推的并发编程知识点笔记,将是你拿大厂offer的突破口

了不起的程序猿

数据库 高并发 java程序员 大厂面试 java;

2000多字教你三招在Linux中找出大文件,最后一个命令简直太简单了!

wljslmz

Linux 签约计划第三季 8月月更

即刻报名|Apache Kylin X Apache DolphinScheduler:大数据底座的构建和展望

Kyligence

数字化转型 数字分析 数据调度

硅谷来信:快速行动,Facebook、Quora等成功的“神器”!

博文视点Broadview

2022年6月互联网医疗领域月度观察

易观分析

医疗 市场

牛刀小试基本语法,Go lang1.18入门精炼教程,由白丁入鸿儒,go lang基本语法和变量的使用EP02

刘悦的技术博客

golang 语言 语言 & 开发 教程分享 #go

多业务模式下的交易链路探索与实践

转转技术团队

中台 状态机 FSM

内存问题难定位,那是因为你没用ASAN

华为云开发者联盟

云计算 开发 内存

RT-Thread记录(一、RT-Thread 版本、RT-Thread Studio开发环境 及 配合CubeMX开发快速上手)

矜辰所致

RT-Thread 8月月更

Python开启虚拟环境

技术小生

8月月更 Python虚拟环境

Apache APISIX Ingress v1.5-rc1 发布

API7.ai 技术团队

APISIX kubenetes Ingress Controller

没开发人员,接到开发物联网系统的活儿,干不干?

AIRIOT

低代码 物联网 低代码,项目开发

莅临GOPS大会龙智展位,获取Forrester最新报告:《Forrester Wave™:2021年第四季度企业服务管理报告》

龙智—DevSecOps解决方案

ITSM Forrester Wave Forrester

2022 CCF国际AIOps挑战赛决赛暨AIOps研讨会报名已开启

BizSeer必示科技

人工智能 阿里云 华为云 信通院

双因子与多因子身份验证有什么区别?

SEAL安全

身份验证

【7.29-8.5】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

版本控制篇 | 龙智邀您共赴GOPS全球运维大会,探索大规模、敏捷、高质量、开放式的软件研发与运营之路

龙智—DevSecOps解决方案

运维 DevSecOps GOPS大会

SonarQube即将亮相第十八届GOPS全球运维大会

龙智—DevSecOps解决方案

代码安全 GOPS大会 运维、 代码质量检测工具

开源一夏 | Java格式化日期 微秒

六月的雨在InfoQ

开源 8月月更

centOS7.3 安装启用 iptables 记录

JavaPub

Linux centos7 iptables

秘乐短视频挖矿系统开发详情

开发微hkkf5566

官方发布·2022南京智博会定于10月份在新庄国展召开

AIOTE智博会

SOA与云计算有多大关联?_SOA_Boris Lublinsky_InfoQ精选文章