阅读 29

【Spring Cloud】微服务和Spring Cloud

SpringCloud = 分布式微服务架构的一站式解决方案,是多种微服务架构落地技术的几何体,俗称微服务全家桶。
在这里插入图片描述

微服务特点

• 单一职责:微服务中每一个服务都对应唯一的业务能力,做到单一职责
• 微:微服务的服务拆分粒度很小,例如一个用户管理就可以作为一个服务。每个服务虽小,但“五脏俱全”
• 面向服务:面向服务是说每个服务都要对外暴露Rest风格服务接口API。并不关心服务的技术实现,做到与平台和语言无关, 也不限定用什么技术实现,只要提供Rest的接口即可。
• 自治:自治是说服务间相互独立,互不干扰
○ 团队独立:每个服务都是一个独立的开发团队,人数不能过多
○ 技术独立:因为是面向服务,提供Rest接口,使用什么技术没有别人干涉
○ 前后端分离:采用前后端分离开发,提供统一Rest接口,后端不用再为PC、移动端开发不同接口
○ 数据库分离:每个服务都使用自己的数据源
• 部署独立:服务间虽然有调用,但要做到服务重启不影响其他服务。有利于持续集成和持续交付。每个服务都是独立的组件,可复用,可替换,降低耦合,易维护

微服务结构图:
在这里插入图片描述

Spring Cloud 优势

微服务是一种架构方式,最终肯定需要技术架构去实施。最火的莫过于SpringCLoud。为什么?
• 后台硬:作为Spring家族的一员,有整个Spring全家桶靠山,背景十分强大。
• 技术强:Spring作为Java领域的前辈,可以说是功力深厚。有强力的技术团队支撑,一般人还真比不了
• 群众基础好:可以说大多数程序员的成长都伴随着Spring框架。Springcloud与Spring的各个框架无缝整合,对大家来说一切都是熟悉的配方,熟悉的味道。
• 使用方便:SpringCloud完全支持SpingBoot的开发,用很少的配置就能完成微服务框架的搭建。

Spring Cloud 组件简介

• Eureka:服务治理组件,包含服务注册中心,服务注册与发现机制的实现。(服务治理,服务注册/发现)
• Zuul:网关组件,提供智能路由,访问过滤功能
• Ribbon:客户端负载均衡的服务调用组件(客户端负载)
• Feign:服务调用,给予Ribbon和Hystrix的声明式服务调用组件(声明式服务调用)
• Hystrix:容错管理组件,实现断路器模式,帮助服务依赖中出现的延迟和为故障提供强大的容错能力。(熔断、断路器,容错)

在这里插入图片描述

cloud升级演变

在这里插入图片描述

文章分类
后端
文章标签