• 十四、热部署功能
    • 14 热部署功能
    • 14.1 热部署类
    • 14.2 方法说明
    • 14.3 使用举例

    十四、热部署功能

    14 热部署功能

    Voovan 提供了一个通用的热部署功能,对于那些没有对类和方法接口发生改变的情况下可以进行类的在 JVM 运行时的热替换。

    14.1 热部署类

    类: org.voovan.tools.hotswap.Hotswaper

    14.2 方法说明

    1. public Hotswaper()
    • 构造方法, 在系统路径内自动寻找 Agentjar 并进行加载
    1. public Hotswaper(String agentJarPath)
    • 构造方法,指定一个 AgentJar 进行加载
    • agentJarPath: agentJar的路径。
    1. public void autoReload(int intervals)
    • 自动热加载 Class
    • intervals: 自动重读的时间间隔, 单位: 秒。
    1. public void cancelAutoReload(x)
    • 取消自动热加载操作

    14.3 使用举例

    • 以下是在 Voovan WebServer 中使用热部署的例子
    1. private void initHotSwap() {
    2. //热加载
    3. {
    4. try {
    5. if(config.getHotSwapInterval() > 0) {
    6. Hotswaper hotSwaper = new Hotswaper();
    7. hotSwaper.autoReload(config.getHotSwapInterval());
    8. }
    9. } catch (Exception e) {
    10. Logger.error("初始化热部署失败", e);
    11. }
    12. }
    13. }