Releases: dromara/dynamic-tp
1.0.9 (Nov 6, 2022)
Features
-
告警类型新增邮件告警渠道,感谢 @林林林 提供实现
-
adapter 模块新增 grpc 服务端线程池管理
BugFix
-
AbstractDtpNotifier 添加无参构造函数,修复 SPI 自定义无法接入问题
-
ApolloRefresher 调整为实现 ConfigFileChangeListener 接口,解决配置类型为 properties 类型时,多次修改参数间隔生效的问题,感谢 @ny 提供实现
-
调整线程池告警配置初始化时机,修复提前使用因告警项没初始化导致的 NPE 问题,感谢 @林林林 提供实现
Refactor
-
将 core 模块中 adapter 包迁移到 adapter-common 模块中,彻底解耦
-
重构 notify 模块
-
重构抽象 adapter 模块代码
-
责任链模式重构 notify 模块
Optimize
-
兼容低版本 dubbo(2.7.3) 线程池监控,感谢 @songxiaohua 提供实现
-
兼容 Spring 5.2 以下 applicationContext.findAnnotationOnBean 获取不到注解的情况,感谢 @Redick01 提供实现
-
MemorySafeLinkedBlockingQueue 阻塞队列添加拒绝策略
-
优化项目日志输出
1.0.8 (Aug 22, 2022)
Features
-
新增内存安全队列 MemorySafeLinkedBlockingQueue,感谢 @dragon-zhang 提供实现
-
WebServer 线程池管理支持 Reactive 环境下使用,感谢 @abbottliu.liu 提供实现
-
支持 Dubbox 线程池管理,感谢 @Redick01 提供实现
-
支持 Spring 中的 ThreadPoolTaskExecutor 线程池管理,感谢 @Redick01 提供实现
-
支持 Etcd 配置中心接入,感谢 @Redick01 提供实现
-
监控指标采集器新增输出到应用日志中的 InternalLogCollector,感谢 @Redick01 提供实现
-
三方中间件线程池通知告警支持别名配置,感谢 @renbiao002 提供实现
-
新增 extension 模块,放置一些扩展功能
-
三方中间件线程池管理支持通知告警功能
-
指标数据采集支持同时配置多种采集方式
-
新增 MdcTaskWrapper 任务包装器,支持 MDC 上下文传递
-
新增 SwTraceTaskWrapper 任务包装器,支持 Skywalking TID 传递
-
新增通知告警集群限流插件,见 extension-limiter-redis 模块
-
ThreadPoolCreator 类新增一些内存安全快捷创建线程池方法
BugFix
-
兼容 JDK11 当前要设置核心线程数不能大于上次设置的最大线程数限制
-
修复核心线程预热设置 preStartAllCoreThreads 不生效问题
-
修复 Hystrix 线程池获取失败 & 调参被覆盖问题
-
修复采集类型为logging模式时,配置更新后日志输出到应用日志中的问题
Refactor
-
重构 logging 模块,去掉事件监听依赖
-
重构抽象 adapter 模块代码
-
责任链模式重构 notify 模块
Optimize
-
example 添加 Hystrix 线程池的测试例子
-
低版本 Apollo 配置文件格式兼容
-
Undertow 容器开启活跃线程池数采集功能
-
Endpoint 端点接口支持三方中间件线程池指标数据获取
-
优化三方中间件参数刷新逻辑,增加校验判断逻辑及日志输出
-
各模块代码优化
1.0.7 (Jun 8, 2022)
Features
-
报警渠道接入飞书
-
支持 Apache Dubbo & Alibab Dubbo 服务端提供端线程池管理
-
支持 RocketMq 消费端线程池管理
-
支持 Hystrix 线程池管理
-
支持 SpringBoot 内置三大WebServer(Tomcat、Jetty、Undertow)线程池管理
-
增加线程池别名配置,提升告警信息可读易懂性
-
提供任务包装类NamedRunable,提交任务时设置标识名称,方便问题追踪
-
告警项自定义配置,不配置的项用默认值
BugFix
-
修复并发导致通知报警信息发送多条的问题
-
修复通知渠道配置修改不能动态更新问题
-
修复钉钉手机端报警信息高亮失效问题
Refactor
-
重构部分通知告警模块实现,支持三方中间件通知告警
-
重构调整 adapter、starter 模块代码组织结构
1.0.5 (Apr 24, 2022)
Features
-
logging模块添加log4j2支持
-
配置文件支持json格式,zk已支持json、properties格式配置
BugFix
- #I54B4R TtlRunnable重复包装异常修复
Refactor
- 部分代码优化
Dependency
-
transmittable-thread-local升级到2.12.6
-
micrometer升级到1.8.5
1.0.4 (Apr 6, 2022)
-
配置中心支持Consul
-
监控告警模块增加任务排队等候超时、任务执行超时监控告警
-
线程池完全配置在配置中心,无需代码编程式配置,服务启动会自动创建线程池实例,交给Spring容器管理
-
拒绝策略告警优化,支持前后告警间隔计数
-
相关代码优化
1.0.3 (Mar 21, 2022)
Features
-
配置中心支持Zookeeper
-
线程池交由Spring管理其生命周期,可以通过依赖注入方式使用
-
创建时添加@DynamicTp注解支持监控JUC原生线程池
-
仿照Tomcat线程池设计,提供IO密集型线程池(EagerDtpExecutor)
-
相关代码优化,增加必要校验
1.0.2 (Mar 8, 2022)
Features
-
配置中心支持Nacos、Apollo、Zookeeper
-
告警平台支持企微、钉钉
-
监控指标数据采集支持json日志输出、MicorMeter以及Endpoint三种方式
-
第三方组件线程池管理已集成SpringBoot内置三大WebServer(Tomcat、Jetty、Undertow)
-
核心模块都提供SPI接口可供自定义扩展(配置中心、配置文件解析、告警平台、监控指标数据采集)
-
提供完整使用示例(包含Grafana配置面板Json文件,直接import即可使用)