Springcloud2020.0.3学习笔记(⿊马+尚硅⾕)(⼀:介绍)微服务框架(基于SpringCloud2020.0.3的微服务架构)
需要学习的内容
学习路径
springboot架构图
认识微服务
单体架构
单体架构:将业务的所有功能集中在⼀个项⽬中开发,打成⼀个包部署。优点:
架构简单
部署成本低
缺点:
耦合度⾼
分布式架构
分布式架构:根据业务功能对系统进⾏拆分,每个业务模块作为独⽴项⽬开发,称为⼀个服务。优点:
降低服务耦合
有利于服务升级拓展
缺点:
分布式架构的要考虑的问题:
服务拆分粒度如何?
服务集地址如何维护?
服务之间如何实现远程调⽤? 通过RestTemplate类,openfeign
服务健康状态如何感知?
微服务
特征:
单⼀职责:微服务拆分粒度更⼩,每⼀个服务都对应唯⼀的业务能⼒,做到单⼀职责
⾃治:团队独⽴、技术独⽴、数据独⽴,独⽴部署和交付
⾯向服务:服务提供统⼀标准的接⼝,与语⾔和技术⽆关
隔离性强:服务调⽤做好隔离、容错、降级,避免出现级联问题
微服务的上述特性其实是在给分布式架构制定⼀个标准,进⼀步降低服务之间的耦合度,提供服务的独⽴性和灵活性。做到⾼内聚,低耦合。
因此,可以认为微服务是⼀种经过良好架构设计的分布式架构⽅案 。
微服务这种⽅案需要技术框架来落地,全球的互联⽹公司都在积极尝试⾃⼰的微服务落地技术。在国内最知名的就是SpringCloud和阿⾥巴巴的Dubbo。
Spring cloud
什么是 Spring cloud
构建分布式系统不需要复杂和容易出错。Spring Cloud 为最常⻅的分布式系统模式提供了⼀种简单且易于接受的编程模 型,帮助开发⼈员构建有弹性的、可靠的、协调的应⽤程序。Spring Cloud 构建于 Spring Boot 之上,使得开发者很容易 ⼊⼿并快速应⽤于⽣产中。
我所理解的Spring Cloud就是微服务系统架构的⼀站式解决⽅案,在平时我们构建微服务的过程中需要做如服务发现注册、配置 中⼼、消息总线、负载均衡、断路器、数据监控等操作,⽽ Spring Cloud 为我们提供了⼀套简易的编程模型,使我们能在 Spring Boot 的基础上轻松地实现微服务项⽬的构建。
什么是分布式?
1.将各个组件分开部署,某个组件占⼀个服务器,互相独⽴,互相调⽤,可以将组件的功能发挥强⼤
2.⼀个业务分拆多个⼦业务,部署在不同的服务器上(不同的服务器,运⾏不同的代码,为了同⼀个⽬的)
优点:
1.模块之间独⽴,各做各的事,便于扩展,复⽤性⾼
2.⾼吞吐量。某个任务需要⼀个机器运⾏20个⼩时,将该任务⽤10台机器的分布式跑
(将这个任务拆分成10个⼩任务),可能2个⼩时就跑完了
SpringCloud=分布式微服务架构的站式解决⽅案,是多种微服务架构落地技术的集合体,俗称微服务全家桶
猜猜SpringCloud这个⼤集合⾥有多少种技术?

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。