【Spring Cloud】微服务概念

一、什么是微服务

微服务架构是一种架构概念。旨在通过将功能分解到各个离散的服务中,服务之间互相协调、互相配合,从而实现对解决方案的解耦,并提供更加灵活的服务支持。

二、微服务的特点

  • 复杂度可控:每个微服务专注于单一功能;
  • 独立部署:当单个微服务发生变更时无需编译、部署整个应用;
  • 技术选型灵活:技术选型是去中心化的;
  • 容错:故障会被隔离在单个服务中
  • 扩展:每个服务可以根据实际需求独立进行扩展

三、主流的微服务解决方案

  • Doubbo
  • Spring Cloud

四、与单体架构的区别

五、Spring Cloud组件

  • 路由网关 Spring Cloud ZuulZuul 是作为微服务系统的网关组件,致力于动态路由、过滤、监控、弹性伸缩和安全。
  • 服务注册和发现 EurekaEureka 是作为微服务系统的服务注册与发现组件,提供服务注册和发现功能。
  • 负载均衡 RibbonRibbon 是一个负载均衡组件,Ribbon作为服务消费者的负载均衡器,一种是和 RestTemplae结合,一种是和 Feign 相结合,Feign 默认集成了 Ribbon
  • 声明式调用 Feign简单方便的调用 Spring Cloud 服务的工具,让 Java Http 客户端调用过程变的简单。
  • 配置中心 Config将配置文件进行统一管理,可以从 Config Server 服务或 Git 仓库读取。
  • 熔断器 HystrixHystrix 提供了熔断器的功能,能够阻止分布式系统中出现联动故障。
  • 服务链路追踪 SleuthSleuth Spring Cloud 中的一个组件,主要功能是在分布式系统中提供服务链路追踪的解决方案。
  • 服务监控 Spring Boot AdminSpring Boot Admin 用于管理和监控一个或多个 Spring Boot 程序,使用 Spring Boot Admin 监控 Spring Cloud 微服务。
  • 消息总线 BusSpring Cloud Bus Spring 的事件处理机制和消息中间件消息的发送和接收整合起来,可以轻松的将分布式应用中连接有消息中间件的多个服务节点连接起来,实现消息互通。

六、SpringCloud架构图例

猜你喜欢

转载自blog.csdn.net/qq_37285854/article/details/89882343