1、微服务架构概述
微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相协作(通常是基于HTTP协议的RESTful AP)。每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外,应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建
2、SpringCloud概述
SpringCloud是分布式微服务架构的一站式解决方案,是多种微服务架构落地技术的集合体,俗称微服务全家桶
3、SpringCloud技术栈介绍
服务注册与发现:Eureka(SpringCloud原生自带,已停更)、Zookeeper、Consul、Nacos(推荐)
服务负载与调用:Netflix Oss Ribbon(已停更)、LoadBalancer、Netflix Feign(已停更)、OpenFegin(推荐)
服务熔断降级:Hystrix(SpringCloud原生自带,已停更)、Resilience4j(国外使用,官网推荐)、SpringCloud Alibaba Sentinel(国内使用得多,推荐使用)
服务网关:Zuul(公司内部有分歧)、Zuul2(Zuul的升级版,因为分歧还未完善)、gateway(Sping推荐,主流使用,推荐使用)
服务分布式配置:SpringCloud Config、Nacos(推荐)
服务总线:Bus、Nacos(推荐)
服务开发:Spring Boot