Spring Framework
为依赖注入、事务管理、WEB应用、数据访问等提供了核心的支持。
一站式的轻量级的java开发框架,核心是控制反转(IoC)和面向切面(AOP),针对于开发的WEB层(springMVC)、业务层(IoC)、持久层(jdbcTemplate)等都提供了多种配置解决方案。
Spring Boot
为快速启动且最小化配置的spring应用而设计,并且它具有用于构建生产级别应用的一套固化的视图(固化的视图可以理解成Spring Boot的约定,约定大于实现)。
是一个快速开发框架,通过用MAVEN依赖的继承方式,帮助我们快速整合第三方常用框架,完全采用注解化(使用注解方式启动SpringMVC),简化XML配置,内置HTTP服务器(Tomcat,Jetty),最终以Java应用程序进行执行。
SpringCloud+SpringBoot
实现微服务开发。具体的来说是,
SpringCloud具备微服务开发的核心技术:
RPC远程调用技术(全称是 Remote Procedure Call 是一种进程间通信方式 https://blog.csdn.net/lidongpeng111/article/details/82356160);
SpringBoot的web组件默认集成了SpringMVC,可以实现HTTP+JSON的轻量级传输,编写微服务接口,所以SpringCloud依赖SpringBoot框架实现微服务开发。
Spring Cloud
我们从整体来看一下 Spring Cloud主要的组件,以及它的访间流程
1、外部或者内部的非 Spring Cloud目都统一通过API网关(Zuul)来访可内部服务.
2、网关接收到请求后,从注册中心( Eureka)获取可用服务
3、由 Ribbon进行均负载后,分发到后端的具体实例
4、徹服务之间通过 Feign进行通信处理业务
5、 Hystrix负责处理服务超时熔断
6、 Turbine监控服务间的调用和焠断相关指标