SpringBoot学习笔记(四)
一、SpringBoot热部署
热部署的使用场景:有一些网站或者服务,全年不间断运行,即使重新发布程序后也不需要重启服务,因此我们需要使用到热部署的优点:1、无论是在本地还是线上都适用。2、无需重启服务器,提高了开发、调试效率,提升了发布、运维效率,降低运维成本。
1、热部署与热加载
1.1 java热部署与热加载联系:
不重启服务器编译/部署项目,基于Java的类加载器实现
1.2 热部署和热加载的区别:
1、部署方式:
- 热部署在服务器运行时重新部署项目。
- 热加载在运行是重新加载class。
2、实现原理:
- 热部署直接重新加载整个应用。
- 热加载在运行时重新加载class。
3、使用场景:
- 热部署更多的是在生产环境中。
- 热加载则更多的是在开发环境使用。
2、热部署SpringBoot实现
实现方式:
- 使用Spring Loaded实现
- 使用Spring-boot-devtools实现
Spring Loaded实现:
- Maven启动方式实现,即在pom.xml中添加依赖
- run as - Java application 实现
Spring-boot-devtools实现:
- 在pom.xml中添加依赖