{"repo":"opengoofy/hippo4j","free":true,"listed":false,"github":"https://github.com/opengoofy/hippo4j","clone":"git clone https://github.com/opengoofy/hippo4j.git","description":"📌 异步线程池框架，支持线程池动态变更&监控&报警，无需修改代码轻松引入。Asynchronous thread pool framework, support Thread Pool Dynamic Change & monitoring & Alarm, no need to modify the code easily introduced.","language":"Java","stars":5997,"topics":["java","thread-pool","dynamic","monitor","dynamic-threadpool","resizable","blocking-queue","springboot","rocketmq","kafka"],"license":"Apache-2.0","category":"data-pipelines","readme_excerpt":"动态可观测线程池，提高系统运行保障能力 📢 新项目 Ragent AI（点击跳转） —— 企业级 Agentic RAG 项目，拿个 offer 社群在 AI 领域的首个开源作品。架构设计、代码实现保持一贯的高标准，适合写进校招/社招简历。毕竟现在哪家公司不关注 AI？ 线程池痛点 --- 线程池是一种基于池化思想管理线程的工具，使用线程池可以减少创建销毁线程的开销，避免线程过多导致系统资源耗尽。在高并发以及大批量的任务处理场景，线程池的使用是必不可少的。 如果有在项目中实际使用线程池，相信你可能会遇到以下痛点： - 线程池随便定义，线程资源过多，造成服务器高负载。 - 线程池参数不易评估，随着业务的并发提升，业务面临出现故障的风险。 - 线程池任务执行时间超过平均执行周期，开发人员无法感知。 - 线程池任务堆积，触发拒绝策略，影响既有业务正常运行。 - 当业务出现超时、熔断等问题时，因为没有监控，无法确定是不是线程池引起。 - 原生线程池不支持运行时变量的传递，比如 MDC 上下文遇到线程池就 GG。 - 无法执行优雅关闭，当项目关闭时，大量正在运行的线程池任务被丢弃。 - 线程池运行中，任务执行停止，怀疑发生死锁或执行耗时操作，但是无从下手。 什么是 Hippo4j --- 提供以下功能支持： - 全局管控 - 管理应用线程池实例。 - 动态变更 - 应用运行时动态变更线程池参数，包括但不限于：核心、最大线程数、阻塞队列容量、拒绝策略等。 - 通知报警 - 内置四种报警通知策略，线程池活跃度、容量水位、拒绝策略以及任务执行时间超长。 - 数据采集 - 支持多种方式采集线程池数据，包括但不限于：日志、内置采集、Prometheus、InfluxDB、ElasticSearch 等。 - 运行监控 - 实时查看线程池运行时数据，自定义时间内线程池运行数据图表展示。 - 功能扩展 - 支持线程池任务传递上下文；项目关闭时，支持等待线程池在指定时间内完成任务。 - 多种模式 - 内置两种使用模式：依赖配置中心 和 无中间件依赖。 - 容器管理 - Tomcat、Jetty、Undertow 容器线程池运行时查看和线程数变更。 - 框架适配 - Dubbo、Hystrix、RabbitMQ、RocketMQ 等消费线程池运行时数据查看和线程数变更。 - 变更审核 - 提供多种用户角色，普通用户变更线程池参数需要 Admin 用户审核方可生效。 - 动态化插件 - 内置多种线程池插件，支持用户自定义插件以及运行时扩展。 - 多版本适配 - 经过实际测试，已支持客户端 SpringBoot 1.5.x = 2.7.5 版本（更高版本未测试）。 架构设计 --- 快速开始 --- 对于本地演示目的，请参阅 Quick start 演示环境： http://console.hippo4j.cn/index.html 接入登记 --- 更多接入的公司，欢迎在 登记地址 登记，登记仅仅为了产品推广。 联系我 --- 开源不易，右上角点个 Star 鼓励一下吧！ 如果大家想要实时关注 Hippo4j 更新的文章以及分享的干货的话，可以关注我的公众号。 使用过程中有任何问题，或者对项目有什么建议，关注公众号回复：加群，和 1000+ 志同道合的朋友交流讨论。 深入原理 --- 如果您公司没有使用 Hippo4j 场景的话，我也建议去阅读下项目的底层原理，主要有以下几个原因： - 为了提高代码质量以及后续的扩展行为，运用多种设计模式实现高内聚、低耦合。 - 框架底层依","default_branch":null,"files":null,"tree":[],"storefront":"/r/opengoofy","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/opengoofy/hippo4j/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}