`

热部署和热加载

 
阅读更多

热部署: 相当于容器重启,整个项目从新部署。会清空session ,释放内存。项目打包的时候用的多。

<Context docBase="xxx" path="/xxx" autoDeploy="true"/>  
#或者
<Host name="localhost"  appBase="webapps"  
            unpackWARs="true" autoDeploy="true"  
            xmlValidation="false" xmlNamespaceAware="false">  
<Context docBase="xxx" path="/xxx"/>   
</Host>  

 

热加载:服务器会监听class文件改变,包括web-inf/class,wen-inf/lib,web-inf/web.xml等文件,若发生更改,则局部进行加载,不清空session ,不释放内存。开发中用的多,但是要考虑内存溢出的情况。

 

<Context docBase="xxx" path="/xxx" reloadable="true"/>  
 

 

 

一、热部署

在项目线上更新时,可能会遇到需要热部署的情况,虽然现在大多数公司由于业务量大采用了分布式集群,可以分批次的重启更新。但是还是有需要热部署,这里留个笔记。

实现原理以tomcat为例,是在启服时,自动开一个线程,定时检查是否有改动,然后执行重启(stop,start)操作。

二、热加载原理,其实这里说的是指,不需要重启就能生效,一般用于改方法体的类热加载。

实现原理:以tomcat为例,


参考学习:http://blog.jobbole.com/48582/?repeat=w3tc

分享到:
评论

相关推荐

    详解tomcat热部署和热加载的方法

    热加载和热部署之间的区别在于: - 热加载仅适用于class文件或配置文件的更改,并且不会清除会话数据,它更多地用于开发过程中频繁的代码调整和调试。 - 热部署则是整个项目更新的机制,会清空会话数据和释放内存,...

    jboss热部署配置

    JBoss是一款著名的开源Java应用...总之,JBoss的热部署配置涉及修改配置文件、选择合适的部署目录和类加载器策略,以及可能使用辅助工具。正确配置后,开发者可以高效地测试和调试应用程序,而不必频繁地重启服务器。

    eclipse上如何进行热部署

    热部署是指在不停止服务器的情况下,重新加载和更新应用程序的能力,以提高开发和测试效率。在eclipse中,热部署可以通过配置服务器和项目的部署方式来实现。下面将详细介绍eclipse热部署的配置步骤和相关知识点。 ...

    支持Java热部署的插件

    Java热部署主要涉及到JVM(Java虚拟机)和类加载器(ClassLoader)的工作机制。JVM在运行时会加载类文件到内存中,当类被修改后,热部署插件能够检测到这种变化,并替换内存中的旧版本类,而不需要停止服务。这个...

    美团IDEA插件实现Java应用的热部署实践

    对于Java应用程序来说,热部署就是在运行时更新Java类文件,同时触发Spring以及其他常用第三方框架的一系列重新加载的过程。在这个过程中不需要重新启动,并且修改的代码实时生效。 在美团内部,很多工程师每天本地...

    jboss 热部署必须jar

    "RECOMPILE"可能暗示该jar文件包含了编译JSP文件的能力,使得在服务器运行时可以动态编译和加载修改后的JSP,实现热部署。 在JBoss中,热部署的实现依赖于多个组件和配置。例如,`jboss-deployment-structure.xml`...

    Arthas基本使用_线上热部署_arthas项目在线诊断_

    Arthas的核心功能包括但不限于线上热部署、JVM信息查看、类加载器查询、方法追踪、SQL诊断等,极大地提升了开发和运维的效率。 ### 1. 线上热部署 线上热部署是Arthas的一个关键特性,允许开发者在不中断服务的...

    java热部署工具

    5. **IDE集成**: 许多流行的Java IDE,如IntelliJ IDEA和Eclipse,都有与JBoss集成的插件,可以方便地实现一键部署和热部署功能。 6. **Maven插件**: Maven的Cargo插件也可以用于自动化JBoss的部署,包括热部署。...

    IntelliJ IDEA中SpringBoot项目通过devtools实现热部署的方法

    2. 配置Maven插件:在pom.xml文件中添加spring-boot-maven-plugin插件,并配置fork=true,以便在热部署时重新编译和重新加载应用程序。 知识点:spring-boot-maven-plugin是Maven插件,提供了Spring Boot应用程序的...

    Tomcat热部署,让你轻松部署

    - **Tomcat自身的热部署**:Tomcat内置了基本的热部署功能,当检测到`WEB-INF/classes`或`WEB-INF/lib`目录下的更改时,会自动重新加载应用,但这个功能对于Java类的更新并不完全有效,通常只适用于静态资源和配置...

    热部署工具

    1. **性能影响**: 过度频繁的热部署可能会影响服务器性能,因为每次更新都需要解析和加载新的类。 2. **数据丢失**: 如果正在处理的请求在热部署期间被中断,可能会导致数据丢失或状态错误。 3. **并发问题**: 在...

    eclipse热部署插件

    总之,Eclipse热部署插件是开发者的好帮手,它通过免编译和免重启的功能,帮助我们节省了大量宝贵的时间,使我们能够更加专注于代码的编写和项目的优化。如果你还没尝试过,强烈推荐安装并体验一下这种高效的工作...

    STS热部署方法(springboot).docx

    本文将详细介绍如何在Spring Tool Suite (STS) 中为Spring Boot项目设置热部署,以及DevTools的工作原理。 首先,要在Spring Boot项目中启用热部署功能,需要在`pom.xml`文件中添加`spring-boot-devtools`依赖。这...

    java热部署

    java热部署

    Tomcat热部署配置说明及工具

    在IT行业中,Tomcat是一个广泛使用的Java应用服务器...JRebel作为一款优秀的热部署工具,能进一步简化这个过程,让开发者更加专注于代码的编写和调试。无论是手动配置还是借助工具,热部署都是提升开发体验的有效途径。

    JAVA类加载器分析--热部署的缺陷(有代码示例,及分析)

    总之,“JAVA类加载器分析--热部署的缺陷”这篇博文深入探讨了Java中的类加载机制,特别是热部署过程中可能出现的问题,以及如何通过理解这些机制来优化和解决问题。了解这些知识对于开发和维护大型Java应用至关重要...

    mybatis热部署mapper增量更新.

    3. **工具使用**:除了IDE插件,还有一些专门的热部署工具,如`maven-plugin-dev`,这个插件可以帮助我们监控mapper文件的变化,并自动重新加载。在Maven的pom.xml文件中添加相关配置即可。 4. **Spring Boot集成**...

    类似jboss等支持热部署的服务器原理的例子

    热部署机制通常涉及到类加载器的生命周期管理和类的重新加载策略。 1. 类加载器的生命周期管理:在JBOSS中,每个应用都有一个独立的类加载器,这样就可以隔离不同应用的类。当更新一个应用的代码时,旧的类加载器会...

    Maven项目中的热部署

    "Maven项目中的热部署"这一主题聚焦于如何在Maven管理的项目中实现快速的代码更新,无需每次都重新编译和启动应用。 热部署(Hot Deployment)是一种提高开发效率的技术,允许开发者在不中断应用运行的情况下更新...

Global site tag (gtag.js) - Google Analytics