SpringBoot—三⼤特性
SpringBoot
随着spring使⽤的越来越⼴泛,项⽬的各种配置⽂件也随之越来越多,⼤量的配置⽂件让开发者很烦恼。springboot的诞⽣简化了spring 应⽤的创建、运⾏、部署。
在JDK1.5之后引⼊的注解也在springboot中⼤量使⽤,springboot也提供了⼀些注解(集成了spring的注解),如SpringBootApplication注解标注了该类是⼀个启动类。
另外,在过去的springmvc项⽬中,使⽤第三⽅包需要在maven中配置很多⾏,为了简化我们的配置,很多第三⽅包也提供了基于springboot的maven包,我们只需引⽤做简单的配置及可使⽤。
1.内置Servlet Container
在l中,添加spring-boot-starter-web的maven依赖,使其成为⼀个web项⽬,其中这个spring-boot-starter-web中包含了spring-boot-starter-tomcat,使得项⽬能在内置的tomcat容器中运⾏。
springboot结构另外springboot也可以使⽤其他容器的starter替换tomcat,包括Jetty以及undertow等。这⾥以undertow为例,具体⽅法如下:
springboot内置了servlet容器,项⽬可以直接打包成jar形式,使⽤java -jar命令运⾏,⽽不必像以前打包成war包形式放到tomcat下运⾏。正因为这个机制,结合Jenkins、Docker⾃动化运维得以实现。
2.⽣产准备特性
springboot提供的actuator插件提供了⼤量的⽣产级特性,可以帮助监控和管理springBoot应⽤,⽐如健康检查、审计、统计和HTTP追踪。这在微服务中,可以通过actutor提供的端点与外部应⽤监控系统进⾏整合,⽐如Prometheus、DataDog来进⾏服务监控。SpringBoot-Actuator提供了很多监控端点
端点描述http⽅法
autoconfig显⽰⾃动配置信息GET
beans显⽰应⽤程序上下⽂所有的spring bean GET
configprops显⽰所有@ConfigurationProperties的配置属性列表GET
dump 显⽰线程活动的快照GET env 显⽰应⽤的环境变量
GET health 显⽰应⽤程序的健康指标,这些值由HealthIndicator的实现类提供GET info 显⽰应⽤的信息,可使⽤info.*属性⾃定义info端点公开的数据
GET mappings 显⽰所有的URL路径GET metrics 显⽰应⽤的度量标准信息
GET shutdown 关闭应⽤(默认情况下不启⽤,如需启⽤,需设置abled=true)
POST trace
显⽰跟踪信息(默认情况下为最近的100个HTTP请求)
GET
端点描述http⽅法
/health endpoint
UP表⽰运⾏正常,除UP外,还有Down、OUT_OF_SERVICE、UN_KNOWN等状态。health只简单显⽰了应⽤的UP状态,如果想要知道
详细的信息,需要做如下配置:
这⾥Redis没有连接上,所以状态会变为DOWM
/metrics endpoint
⽤于追踪应⽤的度量信息
springboot集成Prometheus具体实现步骤
1. 添加依赖
2. 配置yml⽂件
3. 设置启动类
启动springboot项⽬后访问 ,可以看到⼀些度量指标
4. 使⽤Docker下载和运⾏Prometheus
$ docker pull prom/prometheus
配置l⽂件
5. 卷和绑定安装
docker run -p 9090:9090 -v /l:/etc/l \      prom/prometheus
或者为配置使⽤额外的卷:
docker run -p 9090:9090 -v /prometheus-data \
prom/prometheus --config.file=/l
6.
7. prometheus⾃带的图形界⾯
8.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。