×

Hippo4J动态可观测线程池框架

消耗积分:2 | 格式:zip | 大小:1.89 MB | 2022-06-14

卞轮辉

分享资料个

授权协议 Apache-2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
所属分类 管理和监控系统监控

软件简介

Hippo4J 是一个强大的动态线程池,附带监控报警功能,内置两种使用模式:轻量级依赖配置中心以及无中间件依赖版本。基于 美团动态线程池 设计理念开发,针对线程池增强 动态调参、监控、报警功能

通过 Web 控制台对线程池参数进行动态调整,支持 集群内线程池的差异化配置。内置线程池参数变更通知,以及 运行过载报警 功能(支持多通知平台)。

按照租户、项目、线程池的维度划分,配合系统权限,让不同的开发、管理人员负责自己系统的线程池。

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

pYYBAGKhzVSAOpfAAAJrdw-bvkY283.png

hippo4j-core

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

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

pYYBAGKhzVaAbo15AAVSL1_nUbY907.png

hippo4j-server

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

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

使用总结

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

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

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

解决什么问题

简单来说,Hippo4J 主要解决了下面这些使用原生线程池存在的问题:

  • 原生线程池创建时无法合理评估参数问题。比如功能使用到线程池,遇到突发流量洪峰,频繁拒绝任务。Hippo4J 提供动态修改参数功能,避免修改线程池参数后重启线上应用
  • 当线程池运行过程中无法再接受新的任务,此时你想知道 线程池内线程都在做什么?Hippo4J 提供查看线程池堆栈功能;
  • 某接口频繁超时,内部依赖线程池执行,想要 查看过去一段时间线程池运行参数情况。Hippo4J 提供历史数据图表查看功能;
  • 原生线程池无任务报警策略。Hippo4J 内置四种报警策略,分别是:活跃度报警、队列容量报警、拒绝策略报警和运行时间过长报警。
 

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !