springboot-热部署-监控
热部署
-
模板引擎
- 在Spring Boot中开发情况下禁用模板引擎的cache
- 页面模板改变ctrl+F9可以重新编译当前页面并生效
-
Spring Loaded
- Spring官方提供的热部署程序,实现修改类文件的热部署
- 下载Spring Loaded(项目地址https://github.com/spring-projects/spring-loaded)
- 添加运行时参数;-javaagent:C:/springloaded-1.2.5.RELEASE.jar –noverify
-
JRebel
- 收费的一个热部署软件
- 安装插件使用即可
-
Spring Boot Devtools(推荐)
-
引入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency>
IDEA使用ctrl+F9,重新编译
-
或是调整配置
Intellij IEDA和Eclipse不同,Eclipse设置了自动编译之后,修改类它会自动编译,而IDEA在非RUN或DEBUG情况下才会自动编译(前提是你已经设置了Auto-Compile)。
- 设置自动编译(settings-compiler-make project automatically)
- ctrl+shift+alt+/(maintenance)
- 勾选compiler.automake.allow.when.app.running
-
监控管理
通过引入spring-boot-starter-actuator,可以使用Spring Boot为我们提供的准生产环境下的应用监控和管理功能。我们可以通过HTTP,JMX,SSH协议来进行操作,自动得到审计、健康及指标信息等
监控和管理端点
端点名 | 描述 |
---|---|
autoconfig | 所有自动配置信息 |
auditevents | 审计事件 |
beans | 所有Bean的信息 |
configprops | 所有配置属性 |
dump | 线程状态信息 |
env | 当前环境信息 |
health | 应用健康状况 |
info | 当前应用信息 |
metrics | 应用的各项指标 |
mappings | 应用@RequestMapping映射路径 |
shutdown | 关闭当前应用(默认关闭),必须使用post请求 |
trace | 追踪信息(最新的http请求) |
定制端点信息
- 定制端点一般通过endpoints+端点名+属性名来设置。
- 修改端点id(endpoints.beans.id=mybeans)
- 开启远程应用关闭功能(endpoints.shutdown.enabled=true)
- 关闭端点(endpoints.beans.enabled=false)
- 开启所需端点
- endpoints.enabled=false
- endpoints.beans.enabled=true
- 定制端点访问根路径management.context-path=/manage
- 定制http端点management.port=8888
- 关闭http端点management.port=-1