SpringCloud本质
javaweb:servlet+tomcat+jsp——太繁琐,进阶SSH,SSM
Spring MVC:简化开发—配置十分麻烦,进阶—>自动配置
SpringBoot:javaweb的开发框架、开箱即用=====微服务太多了,需要管理
SpringCloud: 不是一门技术,是一个生态圈-解决方案—解决分布式的
1、三层架构
MVC——是一种结构——为了开发更有效率
2、使用开发框架
Spring
IOC 控制反转。DI依赖注入
AOP
3、架构发展
单体架构
微服务化—模块化-拆分
分布式部署—-代码其实没有变化(分布式出现的四个核心问题)
4、微服务架构的问题
这么多服务,客户端怎么访问
服务之间如何通信
服务怎么治理
服务挂了,怎么办
为什么要解决这些问题?网络是不可靠的
5、SpringCloud生态,解决这些问题
第一个
Springcloud Nextflix 一站式解决方案 2018停止服务
1.API网关,zuul组件
2.Feign—httpClient—同步阻塞
3.Eureka—服务注册与发现
4.Hystrix—熔断机制
导入一个依赖,配置一个注解
第二个
Apache Dubbo Zookeeper(不完善)
1.没有网关,借助zuul,或者自己开发网关
2.Dubbo 通信—RPC---异步非阻塞
3.Zookeeper。服务注册与发现。大数据(Hadoop,Hive)
4.没有熔断机制,借助Hystrix
第三个
Spring Cloud Alibaba
下一代的微服务标准, istio
万变不离其宗—就是为了解决初始的四个问题