# dynamic-tp **Repository Path**: dromara/dynamic-tp ## Basic Information - **Project Name**: dynamic-tp - **Description**: 🔥🔥🔥轻量级动态线程池,内置监控告警功能,基于主流配置中心(已支持Nacos、Apollo、ZK,可通过SPI自定义实现)。Lightweight dynamic threadpool, with monitoring and alarming functions, base on popular config centers, can be customized through SPI. - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: https://dynamictp.cn - **GVP Project**: No ## Statistics - **Stars**: 2517 - **Forks**: 839 - **Created**: 2022-01-11 - **Last Updated**: 2025-10-24 ## Categories & Tags **Categories**: utils **Tags**: dynamic-threadpool, threadpool, 动态线程池, dynamictp, 线程池监控 ## README
基于配置中心的轻量级动态线程池,内置监控告警功能,集成常用中间件线程池管理,可通过SPI自定义扩展实现
官网: https://dynamictp.cn 🔥
--- ## 痛点 使用线程池 ThreadPoolExecutor 过程中你是否有以下痛点呢? > 1. 代码中创建了一个 ThreadPoolExecutor,但是不知道那几个核心参数设置多少比较合适 > > 2. 凭经验设置参数值,上线后发现需要调整,改代码重新发布服务,非常麻烦 > > 3. 线程池相对开发人员来说是个黑盒,运行情况不能及时感知到,直到出现问题 如果有以上痛点,动态可监控线程池框架(**DynamicTp**)或许能帮助到你。 如果看过 ThreadPoolExecutor 的源码,大概可以知道它对核心参数基本都有提供 set / get 方法以及一些扩展方法,可以在运行时动态修改、获取相应的值,这些方法有: ```java public void setCorePoolSize(int corePoolSize); public void setMaximumPoolSize(int maximumPoolSize); public void setKeepAliveTime(long time, TimeUnit unit); public void setThreadFactory(ThreadFactory threadFactory); public void setRejectedExecutionHandler(RejectedExecutionHandler handler); public void allowCoreThreadTimeOut(boolean value); public int getCorePoolSize(); public int getMaximumPoolSize(); public long getKeepAliveTime(TimeUnit unit); public BlockingQueue
- 配置变更会推送通知消息,且会高亮变更的字段
更多见官网文档,[通知报警](https://dynamictp.cn/guide/notice/alarm.html)
---
## 监控



目前框架提供了四种监控数据采集方式,通过 collectorTypes 属性配置监控指标采集类型,默认 Micrometer
> 1. Logging:线程池指标数据会以 Json 格式输出到指定的日志文件里
>
> 2. Internal_logging:线程池指标数据会以 Json 格式输出到项目日志文件里
>
> 3. Micrometer:采用监控门面,通过引入相关 Micrometer 依赖采集到相应的存储平台里(如 Prometheus,InfluxDb...)
>
> 4. Endpoint:暴露 Endpoint 端点,可以通过 http 方式实时获取指标数据
更多见官网文档,[监控](https://dynamictp.cn/guide/monitor/collect_types.html)
---
## Star History
[](https://star-history.com/#dromara/dynamic-tp&Date)
---
## 代码托管
- github: https://github.com/dromara/dynamic-tp
- gitee: https://gitee.com/dromara/dynamic-tp
- gitcode: https://gitcode.com/dromara/dynamic-tp
---
## 联系我
看到这儿,**请给项目一个 star**,你的支持是我们前进的动力!
使用过程中有任何问题,或者对项目有什么想法或者建议,可以加入社群,跟 1700+ 群友一起交流讨论。
微信群均已满 200 人,可以关注微信公众号,加我个人微信拉群(备注:dynamic-tp 拉群)。

为了项目更好的发展,请在此进行登记,[使用登记](https://dynamictp.cn/guide/other/users.html)
---
## 友情链接
- [HertzBeat](https://github.com/dromara/hertzbeat) : 易用友好的实时监控告警系统,无需Agent,强大自定义监控能力.