1.SpringCloud基本介绍
1.1提出问题
-
先思考一个问题,没有微服务技术,是不是程序员就不能开发大型项目?
是可以的,对大型项目进行模块划分,对各个模块进行实现。但模块之间更多地是以API调用完成,耦合度较高,不利于拓展和维护(在没有微服务技术时,很多大型项目就已经使用了微服务的概念)
-
标准化的微服务解决方案(SpringCloud 和 SpringCloud Alibaba)出现的原因和价值是什么?
(1)微服务可以根据业务不同,将一个大项目分解成不同的服务(比如搜索服务/网关服务/配置服务/存储服务/发现服务等等)
(2)各个服务通过分布式方式进行工作,从而可以高效,快速,稳定地完成复杂的功能
(3)可以理解为:原来大项目的某些模块->抽出形成微服务->配合分布式工作方式->从而高效,快速稳定地完成复杂功能
1.2系统架构的演变过程
- 单机架构
- 动静分离架构:静态缓存+文件存储
- 分布式架构:业务拆分+负载均衡
- 微服务架构:使用SpringCloud