源码属性

授权 开源
大小 7.95MB
语言 Java

源码简介

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

 

线程池痛点

线程池是一种基于池化思想管理线程的工具,使用线程池可以减少创建销毁线程的开销,避免线程过多导致系统资源耗尽。在高并发以及大批量的任务处理场景,线程池的使用是必不可少的。

如果有在项目中实际使用线程池,相信你可能会遇到以下痛点:

1、线程池随便定义,线程资源过多,造成服务器高负载。

2、线程池参数不易评估,随着业务的并发提升,业务面临出现故障的风险。

3、线程池任务执行时间超过平均执行周期,开发人员无法感知。

4、线程池任务堆积,触发拒绝策略,影响既有业务正常运行。

5、当业务出现超时、熔断等问题时,因为没有监控,无法确定是不是线程池引起。

6、原生线程池不支持运行时变量的传递,比如 MDC 上下文遇到线程池就 GG。

7、无法执行优雅关闭,当项目关闭时,大量正在运行的线程池任务被丢弃。

8、线程池运行中,任务执行停止,怀疑发生死锁或执行耗时操作,但是无从下手。

 

什么是 Hippo4j

提供以下功能支持:

1、全局管控 – 管理应用线程池实例。

2、动态变更 – 应用运行时动态变更线程池参数,包括但不限于:核心、最大线程数、阻塞队列容量、拒绝策略等。

3、通知报警 – 内置四种报警通知策略,线程池活跃度、容量水位、拒绝策略以及任务执行时间超长。

4、数据采集 – 支持多种方式采集线程池数据,包括但不限于:日志、内置采集、Prometheus、InfluxDB、ElasticSearch
等。

5、运行监控 – 实时查看线程池运行时数据,自定义时间内线程池运行数据图表展示。

6、功能扩展 – 支持线程池任务传递上下文;项目关闭时,支持等待线程池在指定时间内完成任务。

7、多种模式 – 内置两种使用模式:依赖配置中心 和 无中间件依赖。

8、容器管理 – Tomcat、Jetty、Undertow 容器线程池运行时查看和线程数变更。

9、框架适配 – Dubbo、Hystrix、RabbitMQ、RocketMQ 等消费线程池运行时数据查看和线程数变更。

10、变更审核 – 提供多种用户角色,普通用户变更线程池参数需要 Admin 用户审核方可生效。

11、动态化插件 – 内置多种线程池插件,支持用户自定义插件以及运行时扩展。

12、多版本适配 – 经过实际测试,已支持客户端 SpringBoot 1.5.x => 2.7.5 版本(更高版本未测试)。

下载声明:
  • 本站资源如无特殊说明默认解压密码为www.ymkuzhan.com建议使用WinRAR解压;
  • 本站资源来源于用户分享、互换、购买以及网络收集等渠道,本站不提供任何技术服务及有偿服务,资源仅提供给大家学习研究请勿作它用。
  • 赞助本站仅为维持服务器日常运行并非购买程序及源码费用因此不提供任何技术支持,如果你喜欢该程序,请购买正版!
  • 版权声明:
  • 下载本站资源学习研究的默认同意本站【版权声明】若本站提供的资源侵犯到你的权益,请提交版权证明文件至邮箱ymkuzhan#126.com(将#替换为@)站长将会在三个工作日内为您删除。
  • 免责声明:
  • 您好,本站所有资源(包括但不限于:源码、素材、工具、字体、图像、模板等)均为用户分享、互换、购买以及网络收集而来,并未取得原始权利人授权,因此禁止一切商用行为,仅可用于个人研究学习使用。请务必于下载后24小时内彻底删除,一切因下载人使用所引起的法律相关责任,包括但不限于:侵权,索赔,法律责任,刑事责任等相关责任,全部由下载人/使用人,全部承担。以上说明,一经发布视为您已全部阅读,理解、同意以上内容,如对以上内容持有异议,请勿下载,谢谢配合!支持正版,人人有责,如不慎对您的合法权益构成侵犯,请联系我们对相应内容进行删除,谢谢!