怀人 2020-10-23 16:18 采纳率: 25%
浏览 928

dubbo,ReferenceConfig(null) is not DESTROYED when FINALIZE

求助!!!!


1.问题

springBoot服务启动时卡住,控制台一直打印*ReferenceConfig(null) is not DESTROYED when FINALIZE*,如下图:
图片说明


2.环境

dubbo 2.7.6、zookeeper 3.4.10、springBoot项目


玩不转了,大佬别走

  • 写回答

1条回答 默认 最新

  • WaitIKnowYou 2023-06-11 12:54
    关注

    可能是因为 Dubbo 的 ReferenceConfig 对象没有被正确销毁。这可能会导致在 Spring Boot 服务启动时卡住的情况。

    • 检查 Dubbo 依赖版本:确保你使用的 Dubbo 版本与其他依赖项(例如 ZooKeeper)兼容。有时,版本不匹配可能会导致此问题。尝试升级或降级 Dubbo 和其他相关依赖项的版本,确保它们之间兼容。
    • 销毁 Dubbo 的 ReferenceConfig 对象:在你的 Spring Boot 项目中,确保在适当的时机销毁 Dubbo 的 ReferenceConfig 对象。可以通过实现 DisposableBean 接口或使用 @PreDestroy 注解来进行销毁操作。
    import org.springframework.beans.factory.DisposableBean;
    import org.springframework.stereotype.Component;
    
    @Component
    public class DubboReferenceDestroyer implements DisposableBean {
        
        @Override
        public void destroy() throws Exception {
            // 销毁 Dubbo 的 ReferenceConfig 对象
            ReferenceConfigCache.getCache().destroyAll();
        }
    }
    
    
    

    或者,你也可以使用 @PreDestroy 注解在指定的 Bean 方法上添加销毁逻辑:

    import org.springframework.stereotype.Component;
    import javax.annotation.PreDestroy;
    
    @Component
    public class DubboReferenceDestroyer {
        
        @PreDestroy
        public void destroy() {
            // 销毁 Dubbo 的 ReferenceConfig 对象
            ReferenceConfigCache.getCache().destroyAll();
        }
    }
    
    
    

    如果以上方法仍然无法解决问题,请确保 Dubbo 和 ZooKeeper 的版本兼容,并尝试升级到最新的 Dubbo 版本

    评论

报告相同问题?

悬赏问题

  • ¥15 一道python难题
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度