springcloud微服务架构学习
1. 微服务架构
1.1 微服务是什么(定义)
作者: Martin Fowler
自从: Mar 2014
微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP协议的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外,应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建。
1.2 微服务架构的好处
1.3 微服务架构面临的挑战(缺点)
1.4 微服务架构的集合(组件)
2. Spring Cloud
2.1 Spring Cloud是什么(定义)
Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的开发便利性简化了分布式系统的开发,比如服务发现、服务网关、服务路由、链路追踪等。Spring Cloud 并不重复造轮子,而是将市面上开发得比较好的模块集成进去,进行封装,从而减少了各模块的开发成本。换句话说:Spring Cloud 提供了构建分布式系统所需的“全家桶”。
注:springboot 是一种技术,springcloud是微服务架构的解决方案,由多种技术的落地实现组成。
2.2微服务架构体系变化
2.2.1 2020前微服务架构主流
2.2.2 2020后微服务架构主流
2.2.3 SpringCloud组件停更
springcloud停更引发的升级惨案,几乎覆盖全部主流组件:
目前停更不停用,可以使用但不推荐:
1.被动修复bugs
2.不在接受合并请求
3.不在发布新版本
3.SpringCloud 版本选型
3.1 springboot
官网:https://spring.io/projects/spring-boot
springboot目前最新版本为:2.3.4.RELEASE
3.2 springcloud
官网:https://spring.io/projects/spring-cloud
最新版本为:Hoxton.SR8
3.3 版本选型
说明:spring cloud和spring boot的选型不是最新的就是最好的,要根据官网说明进行配置
目前官网建议版本为:Hoxton.SR8 +2.3.3.RELEASE.