Erlo

DynamicTP-动态线程池管理工具本地部署-Springboot + Nacos

2025-02-19 15:29:24 发布   29 浏览  
页面报错/反馈
收藏 点赞

一、官方地址 DynamicTP

二、踩坑

先要把依赖版本搞定,后面的配置才能顺利生效

1.一定要确定好自己是什么项目,SpringBoot或SpringCloud

不同类型的项目使用的DynamicTP的配置不相同

如果pom.xml文件中带有spring-cloud-dependencies则是SpringCloud项目

2.依赖版本

首先SpringBoot版本要和Nacos版本可以兼容,可以先单独部署一个Nacos的配置中心应用,然后再添加DynamicDP的配置

我使用的依赖版本为 SpringBoot 2.1.1.RELEASE + Nacos 0.2.10 + DynamicTP 1.2.0

官方提示

image

可以参考我的pom.xml



    4.0.0
    com.dong
    myspringboot
    0.0.1-SNAPSHOT
    myspringboot
    Demo project for Spring Boot
    
        0.2.10
    

    
        
            org.springframework.boot
            spring-boot-starter-actuator
            2.1.1.RELEASE
        

        
            org.springframework.boot
            spring-boot-starter-actuator
            2.1.1.RELEASE
        

        
            com.alibaba.boot
            nacos-config-spring-boot-starter
            ${nacos-config-spring-boot.version}
        

        
            com.alibaba.boot
            nacos-config-spring-boot-actuator
            ${nacos-config-spring-boot.version}
        

        
            org.dromara.dynamictp
            dynamic-tp-spring-boot-starter-nacos
            1.2.0
        
        
            org.springframework.boot
            spring-boot-starter-web
            2.1.1.RELEASE
            compile
            
                
                    com.fasterxml.jackson.core
                    jackson-databind
                
              
        

        
            com.fasterxml.jackson.core
            jackson-databind
            2.14.2
        
    

    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.1
                
                    1.8
                    1.8
                    UTF-8
                
            
            
                org.springframework.boot
                spring-boot-maven-plugin
                2.1.1.RELEASE
                
                    com.dong.myspringboot.MyspringbootApplication
                    true
                
                
                    
                        repackage
                        
                            repackage
                        
                    
                
            
        
    


3.DynamicTP配置

先贴上我的application.yml

server:
  port: 9089
spring:
  application:
    name: my-service
  profiles:
    active: public

nacos:
  config:
    server-addr: 127.0.0.1:8848
    type: yaml
    data-ids: my-service-dev,my-dtp-service  # 逗号分隔,第一个是项目主配置,第二个是动态线程池配置
    auto-refresh: true
    group: DEFAULT_GROUP
    bootstrap:
      enable: true
      log-enable: true

data-ids要和Nacos配置中一模一样,比如我的DP配置是my-dtp-service,那么我的Nacos中也是一样的

image

四、报错 java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/json/JsonMapper

这是因为依赖冲突了

mvn dependency:tree | findstr "jackson"命令执行后如果有输出则是有冲突


    org.springframework.boot
    spring-boot-starter-web
    
        
            com.fasterxml.jackson.core
            jackson-databind
        
    



    com.fasterxml.jackson.core
    jackson-databind
    2.14.2

在pom文件中添加以上代码来剔除冲突依赖

五.

如果项目启动后控制台输出

DtpRegistry has been initialized, remote executors: [], local executors: []

那么大概率是Nacos中的配置没有读到,需要再确认依赖版本或者application.yml中的配置

最后希望大家都能部署成功

image

登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认