70 微服务架构的演变

1传统架构,分布式架构,soa架构,微服务架构演变过程

2,基于ide构建webService 项目

3,微服务架构与SOA 架构的区别

4,SpringCloudAlibaba与SpringCloud 的区别。

微服务架构如何演变的?
传统单体架构-分布式架构-SOA面向服务架构-微服务架构

传统的单体架构模式
传统的单体架构。也就是单点应用,早起的SSM或者SSh 整合项目。
采用分层架构模式,数据库访问层,业务逻辑层,控制层,从前端到后端的代码都是一个人写的。

com.taotao.controler ---springmvc 视图层 jsp/ftl
com.taotao.service ---业务逻辑层
com.taotao.dao---数据库访问层

将项目的代码都放入到同一个项目,部署在同一个tomcat中。
该架构模式有哪些优点:
开发简单。运维简单
缺点:
该架构模式没有对我们的业务逻辑实现拆分,所有的代码都写入到同一个项目中,
只是适合于小团队或者个人形式的开发,不适合于团队模式协同工作开发,如果系统中某个模块出现了不可用的情况下,会导致整个系统无法使用
应用场景: 政府项目,管理系统,crm ,oa 适合于小团队开发。

分布式架构模式:

分布式的架构模式基于传统的架构模式演变而来,将我们传统的单点系统根据业务
拆分。会拆分为会员系统,订单系统,支付系统,秒杀系统等。从而降低整个项目的耦合度。
这种架构模式慢慢适合于互联网公司的发展。
会员系统 memner.mayikt.com
支付系统 pay.maykt.com
命名为系统化:包含服务和视图层。
SOA 面向服务架构:
SOA 模式也称为: 面向服务架构模式,俗称面向接口开发,将其共同存在的业务逻辑抽取成一个共同的服务,提供给其他的服务接口实现调用,服务与服务之间通讯采用rpc 远程技术调用。
SOA架构模式特点:
1,SOA架构通讯中,采用XML 方式实现通讯,在高并发下通讯过程中协议存在非常大冗余性,所以在最后 微服务架构模式中使用了json格式替代了xml.
2,SOA架构模式实现方案为WebService或者EJB 企业服务总线,底层通讯协议SOAP协议(Http+XML)实现传输。


image.png

ESB企业服务总线

解决多系统之间跨语言通讯,数据协议的转换,提供可靠的信息传输。

微服务架构:
微服务架构产生的原因:
微服务架构基于SOA架构演变过来的
在传统的WebService 架构中有如下问题:
1 采用SOAP 协议实现通讯,xml传输非常重要,效率比较低
2,服务化管理和治理设施不够完善
3,依赖与中心服务发现机制
4,不适合于前后分离架构模式

前端分离技术就是对我们控制层和业务逻辑实现区分,
前端控制可以采用vue 调用我们后端接口(http+json)

微服务架构模式的基本概念:
微服务架构模式就是从我们的soa架构模式演变过来的,比SOA 架构对服务拆分的粒度会更加精细,采用前后端分离的架构模式,让专业的人去做专业的事(专注),目的可以实现高效率开发。微服务架构中。每个服务之间都是相互不影响 每个服务必须要独立部署,运维,互不影响,微服务架构模式非常轻巧,轻量级,适合于互联网公司开发模式。

服务与服务之间通讯的协议采用restful形式,数据交换格式采用Http+json格式实现传输。整个传输过程中,采用二进制,所以http协议可以实现跨语言的平台,并且和其他的语言实现通讯,所以为什么开放都是采用http+Json 格式传输。
SOA架构和微服务架构有哪些区别?
1,通讯协议
微服务架构基于SOA 架构模式演变过来的,继承SOA架构优点,在微服务架构中剔除了SOA架构中SOAP协议和ESB 企业服务总线,改为http+JSON形式传输我们的接口。
2,服务拆分粒度
微服务架构模式比SOA 架构模式粒度更加精细,提倡让专业的人做专业的事,实现高效的开发,每个服务与服务互不影响,每个服务都是单独独立数据库。
Redis连接, MQ等,并且都是实现独立部署,整个服务架构更加轻巧,轻量级。
在soa架构中,有可能存在多个服务共享同一个数据库,微服务架构更加强调每个服务都是单独独立的数据库。

3,迭代:
微服务架构模式比soa 架构模式,更加适合于互联网公司敏捷,高效,快速迭代版本开发,因为禄蠹非常精细。

ESB 企业服务总线: 解决多系统之间跨语言无法实现通讯的问题,对我们的数据协议实现转换,可以提供可靠的消息传输
一般情况下都是采用http+JSON 格式传输,所以没有必要使用ESB 企业服务总线。

微服务架构中会存在那些问题?
分布式解决方案(rabbitmq, rocketmq事务消息,lcn(淘汰),setata)最终一致性原则

分布式任务调度平台: (xxl-Job,AlibabaCloud Scheduler, elastic-job)
分布式服务注册与发现(Eureka,consul,zookeeper,Nacos)
分布式日志采集系统elk+kafka
分布式服务追踪与调用链系统 Zipkin
分布式服务配置中心(springcloud config/携程阿波罗/nacos/disconfig)

非常重要的概念: 独立部署, 可配置,动态化。

为什么要使用到SpringCloud
SpringCloud并不是一个rpc远程调用框架,而是一个微服务全家桶的解决方案的框架。
理念就是一条龙服务解决我们在微服务架构中遇到的问题。
服务治理:eureka
分布式配置 config
客户端调用工具rest/feign客户 rpc远程调用

Rpc远程调用框架有那些?
Httpclient、dubbo、feign、grpc、基于netty手写rpc

SpringCloud 第一代和第二代区别:
SpringCloud 第一代实际上都是用的Netflix 开源的组件整合微服务解决方案
SpringCloud 第二代实际就是自己研发和springCloudAlibaba 国内的优秀的微服务解决框架实现整合。
SpringCloudAlibaba

SpringCloudalibaba就是为了推广阿里云的产品对我们目前的SpringCloud2.x版本实现扩展功能。
Nacos 服务注册与发现、分布式配置中心

Rocketmq 买阿里云的ones

SpringCloud技术总结:
微服务架构演变过程 传统的单体架构->分布式架构->soa面向服务架构->微服务架构模式。


image.png

SpringCloud第一代:

SpringCloud Config 分布式配置中心

SpringCloud Netflix 核心组件

Eureka:服务治理

Hystrix:服务保护框架

Ribbon:客户端负载均衡器

Feign:基于ribbon和hystrix的声明式服务调用组件

Zuul: 网关组件,提供智能路由、访问过滤等功能。

SpringCloud第二代(自己研发)和优秀的组件组合:

Spring Cloud Gateway 网关

Spring Cloud Loadbalancer 客户端负载均衡器

Spring Cloud r4j(Resilience4J) 服务保护

Spring Cloud Alibaba Nacos 服务注册

Spring Cloud Alibaba Nacos 分布式配置中心

Spring Cloud Alibaba Sentinel服务保护

SpringCloud Alibaba Seata分布式事务解决框架

Alibaba Cloud OSS 阿里云存储

Alibaba Cloud SchedulerX 分布式任务调度平台

Alibaba Cloud SMS 分布式短信系统

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