硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

SOA 和微服务之间的区别

  • 2017-07-26
  • 本文字数:930 字

    阅读完需:约 3 分钟

近几年,我们有很多文章 SOA 和微服务之间的不同点和相似点进行了分析。有些人认为 SOA 有很多地方是值得微服务学习的,而有些人则认为区别对待微服务和SOA 会更好。而 Neal Ford 认为,将单体迁移到面向服务的架构要比迁移到微服务来得容易。关于选择 SOA 还是微服务的话题,最近并没有太多的争论,直到 Redmonk 的 Stephen O’Grady 发表了他的文章,这个话题再次进入了人们的视野。O’Grady 在他的文章里说到,服务的大小不应该成为关键的决定性因素。这些年来,人们也一直在争论这个观点,比如 Dan North 。而 Jeppe Cramon 也说过:

单纯使用服务大小来定义微服务有失偏颇,也难以确定一个微服务是否被赋予了正确的职责……

O’Grady 相信,SOA 和微服务之间有着千丝万缕的联系:

在过去,SOA 存在的一些缺陷导致它变成企业的幻象,就像今天那些使用了微服务云原生架构的激进型组织一样。如果我们深入到 SOA 的核心,我们会发现,SOA 的本意是说架构应该由服务组成,而不是单体。

O’Grady 在他的文章里通过 Google Trends 生成了一些图表,其中第一张图表显示了 SOA 在整个行业历史上曾经有一小段时期处于流行的高峰状态。

Stephen 认为,通过服务大小来区分 SOA 和微服务将有碍找出导致 SOA 没落与微服务崛起的真正原因,SOA 是由厂商驱动的,而微服务更多的是由开发者来驱动。

因为 AWS 的大肆成功,我们无法否认基于服务驱动的平台确实是构建可伸缩平台的一种有效方式,也无法否认它们在现今所取得的主导地位。但值得注意的是,现今基于服务的平台一般是由开发者来驱动的。而 SOA 最初由大型的厂商来驱动,基于拜占庭式的复杂(一般带有政治性质)的标准框架来构建服务,而这些标准并不为开发者所接受。

O’Grady 在文章中提到,微服务在好的方面和不好的方面都借鉴了 SOA。

微服务比单体更容易开发,而且没有了 SOA 的厂商标准累赘。

在过去几年,还有其他的一些人也表达了类似的观点, Asanka 说:

如今,企业正在转向更干净的 SOA,开始拥抱 MSA。或许最大的看点是组件化,以及微服务提供的单一功能能够被快速地部署成组件,在必要的时候可以很容易地进行伸缩。不管怎样,这是一种很新奇的概念。

其中的第二张 Google Trends 图表也很有趣。

查看英文原文 The Difference between SOA and Microservices?

2017-07-26 19:0018838
用户头像

发布了 322 篇内容, 共 155.9 次阅读, 收获喜欢 148 次。

关注

评论

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

百度搜索深度学习模型业务及优化实践

百度Geek说

人工智能 深度学习 架构 企业号11月PK榜

OpenHarmony创新赛|赋能直播第五期

OpenHarmony开发者

OpenHarmony

如何配置支付宝密钥之如何配置证书|保姆级教学(二)

盐焗代码虾

证书 支付宝 经验分享 密钥

继电器的工作原理与应用案例

华秋电子

继电器

AntDB-M高性能设计之hash索引动态rehash

亚信AntDB数据库

数据库 AntDB 亚信科技AIDB数据库 AntDB数据库

解读 Swagger enum:完整示例教程

Liam

前端 swagger Enum API 文档 #程序员

ios安全加固 ios 加固方案

矩阵起源加入 OpenCloudOS 操作系统开源社区,完成技术兼容互认证

MatrixOrigin

数据库 分布式 云原生 MatrixOrigin MatrixOne

Device Partner平台合作伙伴认证和数据安全保护

HarmonyOS开发者

使用LLama和ChatGPT为多聊天后端构建微服务

互联网工科生

微服务 ChatGPT

WorkPlus安全专属移动数字化航空母舰,助力企业掌控业务和生态

BeeWorks

华润啤酒走进用友,数智化赋能酒业新世界

用友BIP

iOS应用加固方案解析:ipa加固安全技术全面评测

超级APP,All in one APP

BeeWorks

WorkPlus定制化的沟通协作平台,助您实现企业级完全掌控

BeeWorks

Go 接口:Go中最强大的魔法,接口应用模式或惯例介绍

不在线第一只蜗牛

Go 接口 编程语言

SATA硬件驱动器接口的可制造性问题详解

华秋电子

SATA

平安人寿基于 Apache Doris 统一 OLAP 技术栈实践

SelectDB

数据库 大数据 数据仓库 数据分析 apache doris

服务器删除文件后磁盘空间没有立刻释放问题

javaNice

Java Linux

从技术到人文,找打理想团队,互联网众包平台祝您软件开发无忧虑

知者如C

干货!Why TPM——食品饮料行业知名品牌CIO、CTO访谈会实录

赛博威科技

营销费用管理 赛博威 食品饮料行业数字化转型

Sermant框架下的服务治理插件快速开发及使用指南

华为云开源

开源 云原生 微服务治理 sermant

Flink 替换 Logstash 解决日志收集丢失问题

字节跳动云原生计算

大数据 flink 云原生 Logstash

arm64 还是 x86-64:Amazon EC2 实例该如何选择?

魏临

文心一言 VS 讯飞星火 VS chatgpt (132)-- 算法导论11.2 4题

福大大架构师每日一题

福大大架构师每日一题

SOA和微服务之间的区别_SOA_Mark Little_InfoQ精选文章