springcloud五大组件?注解_《SpringCloud学习——准备阶段》

Spring Cloud介绍

    1. 什么是Spring Cloud?

Spring Cloud是一个基于Spring Boot实现的云原生应用开发工具,它为基于JVM的云原生应用开发中涉及的配置管理、服务发现、熔断器、智能路由、微代理、控制总线、分布式会话和集群状态管理等操作提供了一种简单的开发方式

  1. Spring Cloud Config是什么?

Spring Cloud Config 是 Spring Cloud 家族中最早的配置中心,虽然后来又发布了 Consul 可以代替配置中心功能,但是 Config 依然适用于 Spring Cloud 项目,通过简单的配置即可实现功能。

  1. Spring Cloud Bus是什么?

Spring Cloud 体系内的消息总线,使用 message broker 来连接分布式系统的所有节点

  1. Spring Cloud Netflix是什么?

各种Netflix OSS组件集成,包括Eureka(服务注册与发现)、Hystrix(容错管理,实现断路器模式)、Ribbon(客户端负载均衡)、Feign(声明式服务调用组件)、Zuul(网关,提供智能路由、访问过滤等功能)等。

  1. Spring Cloud Stream是什么?

Spring Cloud Stream 是消息中间件组件,它集成了 kafka 和 rabbitmq

  1. Spring Cloud与dubbo的区别
    1. Spring Cloud与Dubbo的区别是什么?

v2-2ff21317cd0f6a19573386b7f5e931de_b.jpg
  1. 常见版本号说明
    1. 软件中的版本号分别表示什么含义?

EX:软件版本号:2.0.2.RELEASE

2:主版本号。当功能模块有较大更新或者整体架构发生变化时,主版本号会更新

0:次版本号。次版本表示只是局部的一些变动。

2:修改版本号。一般是 bug 的修复或者是小的变动

RELEASE:希腊字母版本号。次版本号用户标注当前版本的软件处于哪个开发阶段

  1. 希腊字母版本号都有哪些?分别表示什么含义?

Base:设计阶段。只有相应的设计没有具体的功能实现。

Alpha:软件的初级版本。存在较多的 bug

Bate:表示相对 alpha 有了很大的进步,消除了严重的 bug,还存在一些潜在的 bug。

Release:该版本表示最终版。

  1. Spring Cloud版本定义说明
    1. Spring Cloud版本号中的单词定义规则是什么?

采用伦敦的地铁站名称来作为版本号的命名,根据首字母排序,字母顺序靠后的版本号越大。

  1. 为什么Spring Cloud在定义版本时使用的是单词而非数字?

设计的目的是为了更好的管理每个 Spring Cloud 的子项目的清单。避免子的版本号与子项目的版本号混淆。

  1. 在Spring Cloud版本中GA、PRE(M1,M2)、RC、SR分别表示什么含义?

v2-71bc1b8554a558eddfb8c38330d1d0a0_b.jpg
  1. SpringBoot回顾
    1. 什么是Spring Boot?

Spring Boot是在Spring的基础之上产生的(确切的说是在Spring4.0的版本的基础之上),其中“Boot”的意思就是“引导”,意在简化开发模式,是开发者能够快速的开发出基于Spring 的应用。Spring Boot 含有一个内嵌的 web 容器。我们开发的 web 应用不需要作为 war包部署到 web 容器中,而是作为一个 jar 包,在启动时根据 web 服务器的配置进行加载

  1. Spring Boot解决了什么?

Spring Boot 使配置简单 使编码简单 使部署简单 使监控简单


  1. SpringBoot快速构建项目
    1. 快速构建Spring Boot项目的网址是什么?

https://projects.spring.io/spring-boot/

https://start.spring.io/

  1. 如何通过Spring官网快速构建Spring Boot项目?

v2-d2305190b77895ffd12a5ffc92fee5f4_b.jpg
  1. 全局配置文件操作
    1. 如何在Spring Boot的全局配置文件中修改内嵌容器的端口号?

server.port=8888

  1. 如何在Spring Boot的全局配置文件中配置变量引用?

配置文件中:

msg=Hello World

引用:

@Value("${msg}")

private String msg;

  1. yml配置文件讲解
    1. 什么是yml配置文件?

是 Spring Boot 中新增的一种配置文件格式。特点:具备天然的树状结构

  1. yml配置文件与properties配置文件的区别?

配置文件的扩展名有变化,一个是properties,一个是yml

语法不一样

  1. yml配置文件的语法要求是什么?

1 在 在 properties 文件中是以“. ”进行分割,在 yml 中使用“:”

进行分割

2 yml 的数据格式和 json 的格式很像,都是 K-V 结构的。并且

是通过“:”赋值

3 在 在 yml 中缩进一定不能使用 TAB 件,否则会报错。

4 每个 K 的冒号后面一定要加一个空格

  1. logback日志记录器讲解
    1. logback中的日志级别有哪些?

TRACE < DEBUG < INFO < WARN < ERROR

  1. SpringBoot配置文件-多环境配置
    1. 在Spring Boot的多环境配置中,profile表示什么?

profile:代表的就是一个环境变量

  1. 在Spring Boot的多环境配置中,配置文件的命名格式是什么?

application-{profile}.properties

  1. 在启动多环境配置项目的命令中,如何加载指定配置文件?

java -jar xxx.jar --spring.profiles.active={profile}

  1. SpringBoot核心注解介绍
    1. @SpringBootApplication注解的作用是什么?

@SpringBootApplication:代表是 SpringBoot 的启动类。

  1. @SpringBootConfiguration注解的作用是什么?

@SpringBootConfiguration:通过 bean 对象来获取配置信息

  1. @Configuration注解的作用是什么?

@Configuration:通过对 bean 对象的操作替代 spring 中 xml 文件

  1. @EnableAutoConfiguration注解的作用是什么?

@EnableAutoConfiguration:完成一些初始化环境的配置。

  1. @ComponentScan注解的作用是什么?

@ComponentScan:来完成 spring 的组件扫描。替代之前我们在 xml 文件中配置组件扫描的配置<context:component-scan pacage=”....”>

  1. @RestController注解的作用是什么?

@RestController:1,表示一个 Controller。2,表示当前这个 Controller 下的所有的方法都会以json 格式的数据响应。

  1. SpringBoot全局异常处理
    1. @ControllerAdvice+@ExceptionHandler注解处理异常基本原理是什么?
  1. @ControllerAdvice
  2. public class MyControllerAdvice {
  3. @ResponseBody
  4. @ExceptionHandler(value=java.lang.Exception.class)
  5. public Map<String, Object> myException(Exception ex) {
  6. Map<String, Object> map = new HashMap<>();
  7. map.put("code", 500);
  8. map.put("msg", "出错了。");
  9. return map;
  10. }
  11. @ResponseBody
  12. @ExceptionHandler(value=java.lang.NullPointerException.c
  13. lass)
  14. public Map<String, Object> myException2(Exception ex) {
  15. Map<String, Object> map = new HashMap<>();
  16. map.put("code", -500);
  17. map.put("msg", "空指针异常");
  18. return map;
  19. }
  20. @ResponseBody
  21. @ExceptionHandler(value=com.bjsxt.springboothelloworld.e
  22. xception.ApplicationException.class)
  23. public Map<String, Object> myException3(Exception ex) {
  24. Map<String, Object> map = new HashMap<>();
  25. map.put("code", -800);
  26. map.put("msg", ex.getMessage());
  27. return map;
  28. }
  29. }
  1. 使用Actuator检查与监控
  2. 什么是Actuator检查与监控?

Spring Boot Actuator可以帮助你监控和管理Spring Boot应用,比如健康检查、审计、统计和HTTP追踪等。所有的这些特性可以通过JMX或者HTTP endpoints来获得。

Actuator同时还可以与外部应用监控系统整合,比如 Prometheus, Graphite, DataDog, Influx, Wavefront, New Relic等。这些系统提供了非常好的仪表盘、图标、分析和告警等功能,使得你可以通过统一的接口轻松的监控和管理你的应用。

Actuator使用Micrometer来整合上面提到的外部应用监控系统。这使得只要通过非常小的配置就可以集成任何应用监控系统。

  1. 如何在项目的全局配置文件中设置关闭安全限制?

v2-d08bedf5939e463aea9e3bfb02b0bd52_b.jpg
  1. SpringBootAdmin项目创建
    1. 在搭建SpringBootAdmin服务端项目中,启动类上需要添加什么注解?

应该添加@EnableAdminServer注解

  1. 在搭建客户端时,需要在全局配置文件中添加什么配置?

v2-6095845154e324f56d6be4f1382f0a9c_b.jpg
  1. SpringBootAdmin监控信息讲解
    1. 管理页面中APPLICATIONS的作用是什么?

展示项目的应用数、实例数和状态

  1. 管理页面中JOURNAL的作用是什么?

JOURNAL:查看应用状态变化的历史过程

  1. 管理页面Details中都能看到哪些常用的监控信息?

v2-c43008110849e94df2639305c9bdba00_b.jpg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值