qidao123.com技术社区-IT企服评测·应用市场
标题:
DynamicTP-动态线程池管理工具本地部署-Springboot + Nacos
[打印本页]
作者:
汕尾海湾
时间:
2025-2-19 14:54
标题:
DynamicTP-动态线程池管理工具本地部署-Springboot + Nacos
一、官方地址
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
官方提示
可以参考我的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.dong</groupId>
<artifactId>myspringboot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>myspringboot</name>
<description>Demo project for Spring Boot</description>
<properties>
<nacos-config-spring-boot.version>0.2.10</nacos-config-spring-boot.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>${nacos-config-spring-boot.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-actuator</artifactId>
<version>${nacos-config-spring-boot.version}</version>
</dependency>
<dependency>
<groupId>org.dromara.dynamictp</groupId>
<artifactId>dynamic-tp-spring-boot-starter-nacos</artifactId>
<version>1.2.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.1.RELEASE</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.2</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.1.1.RELEASE</version>
<configuration>
<mainClass>com.dong.myspringboot.MyspringbootApplication</mainClass>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
复制代码
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中也是一样的
四、报错 java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/json/JsonMapper
这是因为依赖冲突了
mvn dependency:tree | findstr "jackson"下令执行后如果有输出则是有冲突
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.2</version>
</dependency>
复制代码
在pom文件中添加以上代码来剔除冲突依赖
五.
如果项目启动后控制台输出
DtpRegistry has been initialized, remote executors: [], local executors: []
那么大概率是Nacos中的配置没有读到,需要再确认依赖版本大概application.yml中的配置
最后盼望各人都能部署成功
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/)
Powered by Discuz! X3.4