1.Spring Boot是什么?

Spring Boot是由Pivotal团队提供的全新Web框架,设计目的是简化新Spring应用初始搭建以及开发过程。它主要的特点是简化了开发和部署的过程,简化了Spring复杂的配置和依赖管理,通过起步依赖和内置Servlet容器能够使开发者迅速搭建起一个Web工程。利用Spring Boot开发的便捷度简化分布式系统基础设施的开发,比如像配置中心、注册、负载均衡等方面都可以做到一键启动和一键部署。

2.Spring Cloud是什么?包含哪些组件?

Spring Cloud是基于Spring Boot的,Spring Cloud的首要目标就是通过提供一系列开发组件和框架,帮助开发者迅速搭建一个分布式的微服务系统。Spring Cloud 是通过包装其他技术框架来实现的,实现了一套通过基于注解、Java配置和基于模板开发的微服务框架。

常用组件包括:

  • 服务注册和发现组件 Eureka
  • 熔断组件 Hystrix
  • 负载均衡组件 Ribbon
  • 路由网关 zuul
  • 配置文件统一管理功能 Spring Cloud Config
  • 安全 Spring Cloud Security
  • 分布式链路追踪组件 Spring Cloud Sleuth
  • 数据流操作包 Spring Cloud Stream

3.什么是微服务?微服务的特点?

微服务是一种用于构建应用的架构方案。微服务架构有别于更为传统的单体式方案,可将应用拆分成多个核心功能。每个功能都被称为一项服务,可以单独构建和部署,这意味着各项服务在工作(和出现故障)时不会相互影响。

特点:

  • 按照业务来划分服务,单个服务代码量小,业务单一,易于维护

  • 每个微服务都有自己独立的基础组件,例如数据库、缓存等,且运行在独立的进程中

  • 微服务之间的通信是通过HTTP协议或消息组件,且具有容错能力

  • 单个微服务能够集群化部署,并且有负载均衡的能力

  • 整个微服务系统应该有一个完整的安全机制,包括用户认证、权限验证、资源保护

  • 整个微服务系统有链路追踪的能力

  • 有一套完整的实时日志系统

4.常见的微服务框架有哪些?

详情点击查看 -> 15种微服务架构框架汇总

5.分布式系统

  1. **分布式系统:**是由多个计算机相互协作,集群部署,对外提供服务,处理海量的用户请求,但用户是毫不知情的,会认为是一台服务器在提供服务能力,而非多个计算机分别处理不同的业务请求。