一、SOA & 微服务

什么是SOA 

面向服务的架构,service oriented architecture。面向服务的架构(SOA)是一种软件开发方法,它使用称为服务的软件组件来创建业务应用程序。每项服务提供一种业务能力,并且服务也可以跨平台和语言相互通信。开发人员使用 SOA 来重用不同系统中的服务,或者组合几个独立的服务来执行复杂的任务。例如,一个组织中的多个业务流程需要用户身份验证功能。您可以创建一项身份验证服务并在所有应用程序中重用,而不是为所有业务流程重写身份验证代码。

SOA的通信协议:SOAP(简单对象访问协议)、Restful HTTP、Apache Thrift、Apache ActiveMQ、JMS(java message service)

SOA的ESB:

Traditionally, SOA involves anenterprise service bus(ESB) as a means of coordinating and controlling these services.

思考:SOA使用ESB来串联协调服务,所以会出现单点问题。

SOA、微服务、DDD

思路:先看是不是一个领域;再看是不是一个层面;最后看区别。

1、观念一:SOA和微服务之间就是去中心化和更细粒度的区别s

Service-oriented architecture was largely created as a response to traditional, monolithic approaches to building applications. SOA breaks up the components required for applications into separate service modules that communicate with one another to meet specific business objectives. Each module is considerably smaller than a monolithic application, and can be deployed to serve different purposes in an enterprise. Additionally, SOA is delivered via the cloud and can include services for infrastructure, platforms, and applications.

Microservice architecture is generally considered an evolution of SOA as its services aremore fine-grained, and function independently  of each other.

思考:微服务是SOA的一种迭代,粒度精细、互相独立,有领域的概念。通讯方式从ESB总线变成了微服务之间互相访问API。

相同点:

拆解了单体服务,基于云的生产/运行环境。适应了大数据量和速度的要求。

不同点:

1、架构上:微服务运行更加独立。SOA在服务之间共享资源和数据。微服务是尽量少地共享数据,SOA则是尽量多地共享。

2、共享组件:微服务没有共享组件这一说;SOA以共享组件为主。(这个组件的定义:ESB之类的)

3、粒度区别

4、数据存储:微服务各存各的;SOA共享数据。

5、服务关系:微服务互相合作;SOA存在common goverance protocols

6、通信:API vs ESB

7、一致性:微服务基于边界上下文;SOA基于共享的数据

8、通信协议:REST、JMS;SOAP、AMQP

9、发布:微服务更灵活

2、观念二:SOA是一种理念,微服务是其中一个实现方式

SOA理念主要特性:分布式计算、封装服务、服务注册&发现、服务松耦合、服务交互

实现方式有两种:1、中心化的:ESB——ESB的根本诉求是为了解决异构系统之间的连通性,通过协议转换、消息解析、消息路由把服务提供者的数据传送到服务消费者。所以,ESB是中心化的,很重,有一定的逻辑,但它的确可以解决一些公用逻辑的问题。2、去中心化的:微服务。分布式服务框架,主要有dubbo、spring cloud,实现后端服务治理的功能。

Spring Cloud Netflix包括如下组件

1、eureka:服务注册和发现

2、zuul:网关;路由url、转发。还有什么别的网关? Nginx + lua;mashape kong;TAO taobao open platform;

3、ribbon:负载均衡,决定转发到具体哪一台实例

4、feign:服务客户端。服务之间如果需要相互访问,可以使用RestTemplate,也可以使用Feign客户端访问。它默认会使用Ribbon来实现负载均衡。

5、Hystrix:监控和熔断

6、Hystrix Dashboard,监控面板

7、Turbine,监控聚合,使用Hystrix监控,我们需要打开每一个服务实例的监控信息来查看。而Turbine可以帮助我们把所有的服务实例的监控信息聚合到一个地方统一查看。这样就不需要挨个打开一个个的页面一个个查看。

介绍地址:aws.amazon.com/cn/what-is/service-oriented-architecture/

结论

最终SOA和微服务主要的区别就在于是否中心化,与SOA的一个关键组件——ESB相关,当然现在没有见过一个ESB究竟是什么样的。从描述上看总线确实会重一些,也是单点类问题方案努力避免的情况。

了解这两个概念后,微服务可以简单地入门了。后续关于容器、DevOps等概念就可以逐渐了解啦!


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,056评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,842评论 2 378
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,938评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,296评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,292评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,413评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,824评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,493评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,686评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,502评论 2 318
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,553评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,281评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,820评论 3 305
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,873评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,109评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,699评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,257评论 2 341

推荐阅读更多精彩内容