代码拉取完成,页面将自动刷新
一个简单版本的线程池动态刷新与监控工具
克隆代码后,把starter模块给install到本地仓库
<dependency>
<groupId>com.fox</groupId>
<artifactId>manage-pools-starter</artifactId>
<version>${revision}</version>
</dependency>
spring:
dtp:
enabled: true #是否开启线程池
ding-ding:
accessToken: #钉钉的token
atMobiles: #需要@的手机号码,使用逗号分隔
atAll: false #是否@所有人
executors: #动态线程池配置
- thread-pool-name: 'message-consume' #bean的名称
# 核心线程数
core-pool-size: 3
# 最大线程数
maximum-pool-size: 10
# 阻塞队列名称,参考 BlockingQueueTypeEnum
blocking-queue: 'LinkedBlockingQueue'
# 阻塞队列大小
queue-capacity: 1
# 拒绝策略名称,参考 RejectedPolicyTypeEnum
rejected-handler: 'AbortPolicy'
# 线程存活时间,单位秒
keep-alive-time: 1024
# 线程工厂名称前缀
thread-name-prefix: 'message-consume'
# 是否报警
alarm: true
# 活跃度报警阈值;假设线程池最大线程数 10,当线程数达到 8 发起报警
active-alarm: 80
# 报警间隔,同一线程池下同一报警纬度,在 interval 时间内只会报警一次,单位分钟,不支持0.x写法
interval: 8
启动类加@EnableDtp注解
使用@Resource 或@Autowired 进行依赖注入,bean的名称是配置文件里面的name。或通过 DtpRegistry.getDtpExecutor("name") 获取
告警功能图片
使用DtpRegistry的sendDingDing()方法钉钉发送消息图示
线程池参数告警钉钉发送消息图示
nacos修改后钉钉发送消息图示
项目参考了美团线程池文章
https://tech.meituan.com/2020/04/02/java-pooling-pratice-in-meituan.html
项目参考了dynamic-tp线程池实现
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。