Spring boot生产级特性

作者: hutou | 来源:发表于2017-07-02 19:09 被阅读249次

说明

spring boot提供的actuator插件提供了大量的生产级特性,通过配置进行使用

        <!-- 监控 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

endpoint

我们可以通过一系列的HTTP请求获得应用程序的相关信息,这些请求就是endpoint,具体有如下几个

autoconfig  : 获取自动配置信息
beans  :获取Spring Bean基本信息
configprops :获取配置项信息
dump : 获取当前线程基本信息
env :获取环境变量信息
health : 获取健康检查信息
info : 获取应用的基本信息
metrics : 获取性能指标信息
mappings : 获取请求映射信息
trace : 获取请求调用信息

可以通过application.properties配置文件进行精准控制

# 放弃安全限制
management.security.enabled=false
# 关闭一个endpoint:beans
endpoints.beans.enabled=false
# 关闭所有endpoint,仅打开beans
endpoints.enable=false
endpoints.beans.enabled=false
# 修改endpoint名称
endpoints.beans.id=mybeans
# 修改请求路径
endpoints.beans.path=/endpoints/mybeans

信息聚合

POM.xml文件中增加如下内容

        <!-- actuator聚合插件 /actuator -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-hateoas</artifactId>
        </dependency>

可以通过/actuator 来访问聚合信息
可以通过图形化插件进行显示,在POM.xml文件中增加如下内容

        <!-- actuator聚合图形化插件 /actuator -->
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-rest-hal-browser</artifactId>
        </dependency>

可以通过/actuator 来访问图形化聚合信息

应用信息

通过/info可以查看应用信息,信息可以在application.properties文件中配置,如果产生乱码,请戳这里,有解决方案

info.app.name=应用名称,使用POM中的信息,@project.modelVersion@
info.app.description=对应用的描述
info.app.version=1.0.0
# 自定义用户信息
info.user.name=hutou
info.user.sex=男
info.user.age=22

健康检查

通过/health可以进行监控检查,下面是一些配置项

# 暴露磁盘空间信息
endpoints.health.sensitive=true
# 健康信息缓存时间,设置太短会影响性能
endpoints.health.time-to-live=500

spring boot提供了很多内置的监控检查功能,都放置在:org.springframework.boot.actuate.health包下

ApplicationHealthIndicator
DiskSpaceHealthIndicator
DataSourceHealthIndicator    检查数据库连接
MailHealthIndicator                检查邮件服务器
MongoHealthIndicator            检查MongoDB数据库
....

可以自行扩展健康检查,一篇好文章

跨域访问

CORS实现跨域访问是比较好的方案!Spring boot有很好的支持!

  1. 在配置文件中进行配置
## 跨域访问
endpoints.cors.allowed-origins=http://www.baidu.com
endpoints.cors.allowed-methods=GET,PUT,POST,DELETE
  1. 在应用中增加@CrossOrigin注解来实现跨域
  2. 自定义配置
@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter{
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
            .allowedOrigins("http://www.baidu.com")
            .allowedMethods("GET","PUT","POST","DELETE");
    }
}

相关文章

  • Spring Boot Actuator 使用

    Spring Boot 的 Actuator 提供了很多生产级的特性,比如监控和度量Spring Boot 应用程...

  • Spring boot生产级特性

    说明 spring boot提供的actuator插件提供了大量的生产级特性,通过配置进行使用 endpoint ...

  • springboot actuator

    了解Springboot Actuator,它提供了很多生产级的特性,比如说监控和度量spring boot应用程...

  • Spring Boot Actuator的应用

    一.作用 Actuator提供了很多生产级的特性,比如监控和度量Spring Boot应用程序。Actuator的...

  • Spring Boot 2 官方指导手册译文

    入门 介绍 Spring Boot Spring Boot 使您可以轻松地创建独立的、生产级的基于 Spring ...

  • Spring家族项目

    Spring Boot Spring boot很容易创建独立的、生产级的基于Spring的应用程序,您可以“只运行...

  • 初始Spring boot

    Spring Boot可以轻松创建可以运行的独立的,生产级的基于Spring的应用程序。spring boot优点...

  • 2019-03-18

    如何学习Spring Boot 1.Spring Boot可以轻松创建单独的,基于生产级的Spring应用程序,您...

  • springboot入门之路(三)_Spring Boot特性

    springboot入门之路(三)_Spring Boot特性 4.Spring Boot特性 阅读:spring...

  • (一)Hello, Spring Boot

    Spring Boot 简介 通过使用Spring Boot,我们可以轻松的构建单独的、生产级的可以”即时运行“的...

网友评论

    本文标题:Spring boot生产级特性

    本文链接:https://www.haomeiwen.com/subject/fztocxtx.html