一、开源项目简介

强大的动态线程池框架,附带监控报警功能,支持 JDK、Tomcat、Jetty、Undertow 线程池;Apache RocketMQ、Dubbo、RabbitMQ、Hystrix 消费线程池(更多框架线程池还在适配中)。内置两种使用模式:轻量级依赖配置中心以及无中间件依赖版本。

二、开源协议

使用Apache-2.0开源协议

三、界面展示

「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图
「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图1
「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图2
「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图3
「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图4

四、功能概述

  • 🏗 全局管控 – 管理应用线程池实例;
  • ⚡️ 动态变更 – 应用运行时动态变更线程池参数,包括不限于:核心、最大线程数、阻塞队列容量、拒绝策略等;
  • 🐳 通知报警 – 内置四种报警通知策略,线程池活跃度、容量水位、拒绝策略以及任务执行时间超长;
  • 👀 运行监控 – 实时查看线程池运行时数据,最近半小时线程池运行数据图表展示;
  • 👐 功能扩展 – 支持线程池任务传递上下文;项目关闭时,支持等待线程池在指定时间内完成任务;
  • 👯‍♀️ 多种模式 – 内置两种使用模式:依赖配置中心 和 无中间件依赖;
  • 🛠 容器管理 – Tomcat、Jetty、Undertow 容器线程池运行时查看和线程数变更;
  • 🌈 中间件适配 – Apache RocketMQ、Dubbo、RabbitMQ、Hystrix 消费线程池运行时数据查看和线程数变更。

hippo4j 的两种使用模式

1.1.0 版本发布后,Hippo-4J 分为两种使用模式:轻量级依赖配置中心以及无中间件依赖版本。

「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图5

hippo4j-core

轻量级动态线程池管理,依赖 Apollo、Nacos、Zookeeper 等三方配置中心(任选其一)完成线程池参数动态变更,支持运行时报警、监控等功能。

监控功能配置详见:线程池监控

「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图6

hippo4j-server

部署 hippo4j-server 服务,通过可视化 Web 界面完成线程池的创建、变更以及查看,不依赖三方中间件。

相比较 hippo4j-core,功能会更强大,但同时也引入了一定的复杂性。需要部署一个 Java 服务,以及依赖 MySQL 数据库。

「开源」强大的动态线程池,针对线程池动态调参、监控、报警功能插图7

使用总结

  hippo4j-core hippo4j-server
依赖 Nacos、Apollo、Zookeeper 配置中心(任选其一) 部署 Hippo-4J Server(内部无依赖中间件)
使用 配置中心补充线程池相关参数 Hippo-4J Server Web 控制台添加线程池记录
功能 包含基础功能:参数动态化、运行时监控、报警等 基础功能之外扩展控制台界面、线程池堆栈查看、线程池运行信息实时查看、历史运行信息查看、线程池配置集群个性化等

使用建议:根据公司情况选择,如果基本功能可以满足使用,选择 hippo4j-core 使用即可;如果希望更多的功能,可以选择 hippo4j-server。

两者在进行替换的时候,无需修改业务代码

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。