翻译:The Difference Between SOA and Microservices Isn’t Size

简介:

SOA和 Microservices的差异不是大小的问题
Stephen O'Grady | July 20, 2017
对于那些已经在科技行业一段时间,有一种倾向,就是把当前的Microservices与古老的面向服务架构(SOA)比较甚至等同的做法。有很多类似“ Microservices”无非是新的SOA”或“亚马逊是把SOA作对的唯一的公司。”的论调。
这不足为奇,因为它也是事实。尽管有很多问题,SOA企业应用的场景,看起来非常像当前正在发展的的,基于原生云架构,由Microservices与其他技术一起构成的应用架构。剥离到其核心,SOA的想法就是架构应该由服务而不是单一的应用程序组成。
如果SOA和 Microservices从功能的角度来看,至少有一些共同点,那么,为什么大家拒绝前者和拥抱后者?
screenshot
许多人会认为大小为关键的区别。SOA描述的服务没有足够的粒度(这是有争议的)因此很难构建和更难管理。这其实掩盖了将大服务分解成大量小的服务造成大量管理开销的显而易见的事实,同时忽略了更为重要的区别:SOA是一个主要由供应商主导的概念, 而Microservices则相反的是的自下而上驱动的。
考虑到像AWS这样的平台的成功,很难提出这样一个论点:服务驱动的平台不是构建平台的有效方法,或者说它们不是当前的主流方法。但值得注意的是,基于服务的平台目前一般都是开发人员现在建设的。而大型供应商最初设想的SOA驱动的世界,其服务是建立在一个复杂的(经常是政治化的)标准的拜占庭框架(译者:应该是指受大型供应商控制)之上的,这一点从未发生过,原因很简单,开发人员不想要它--任何部分。
可以肯定的是, Microservices也受益于由各种SOA实践者的经验教训,通过努力推广和社交推广简化了从前者转向后者的难度。但是,从SOA中获得的最重要的一点(有争议)是开发人员将在一个决定性的作用——在许多情况下决定什么将被使用,什么将不被使用。Microservices比一个全部由供应商来决定的SOA让他们更容易接受。
screenshot
在这个行业中,我们常常寻找管于技术或功能的成功或失败的解释,而成功或失败的真正原因则要简单得多:这技术些会使国王(指开发人员)想使用它吗?
这篇文章很好的指出了SOA和Microservices的区别,翻译过程中有简化,原文链接:
http://redmonk.com/sogrady/2017/07/20/soa-microservices/

相关文章
《Data infrastructure architecture for a medium size organization tips for collecting, storing and analysis》电子版地址
Data infrastructure architecture for a medium size organization: tips for collecting, storing and analysis
60 0
《Data infrastructure architecture for a medium size organization tips for collecting, storing and analysis》电子版地址
PAT (Basic Level) Practice (中文) B1046 划拳 (15 分)
PAT (Basic Level) Practice (中文) B1046 划拳 (15 分)
59 0
PAT (Basic Level) Practice (中文) 1016 部分A+B (15 分)
PAT (Basic Level) Practice (中文) 1016 部分A+B (15 分)
64 0
|
测试技术
PAT (Basic Level) Practice (中文) B1011 A+B 和 C (15 分)
PAT (Basic Level) Practice (中文) B1011 A+B 和 C (15 分)
76 0
PAT (Basic Level) Practice (中文) B1011 A+B 和 C (15 分)
|
机器学习/深度学习 算法
Data Structures and Algorithms (English) - 7-28 Review of Programming Contest Rules(30 分)
Data Structures and Algorithms (English) - 7-28 Review of Programming Contest Rules(30 分)
177 0
Data Structures and Algorithms (English) - 7-28 Review of Programming Contest Rules(30 分)
Data Structures and Algorithms (English) - 6-7 Isomorphic(20 分)
Data Structures and Algorithms (English) - 6-7 Isomorphic(20 分)
106 0
Data Structures and Algorithms (English) - 6-15 Iterative Mergesort(25 分)
Data Structures and Algorithms (English) - 6-15 Iterative Mergesort(25 分)
166 0
Data Structures and Algorithms (English) - 6-8 Percolate Up and Down(20 分)
Data Structures and Algorithms (English) - 6-8 Percolate Up and Down(20 分)
86 0
PAT (Advanced Level) Practice - 1087 All Roads Lead to Rome(30 分)
PAT (Advanced Level) Practice - 1087 All Roads Lead to Rome(30 分)
76 0
PAT (Advanced Level) Practice - 1103 Integer Factorization(30 分)
PAT (Advanced Level) Practice - 1103 Integer Factorization(30 分)
84 0