mirror of https://github.com/longtai-cn/hippo4j
parent
19b18710cd
commit
96b749f08e
@ -0,0 +1,56 @@
|
||||
<img align="center" width="400" alt="image" src="https://user-images.githubusercontent.com/77398366/181906454-b46f6a14-7c2c-4b8f-8b0a-40432521bed8.png">
|
||||
|
||||
# Dynamic and observable thread pool framework
|
||||
|
||||
[![Gitee](https://gitee.com/itmachen/hippo4j/badge/star.svg?theme=gvp)](https://gitee.com/itmachen/hippo4j) [![GitHub](https://img.shields.io/github/stars/opengoofy/hippo4j)](https://github.com/opengoofy/hippo4j) [![Docker Pulls](https://img.shields.io/docker/pulls/hippo4j/hippo4j-server.svg)](https://store.docker.com/community/images/hippo4j/hippo4j-server) [![Contributors](https://img.shields.io/github/contributors/opengoofy/hippo4j?color=3ba272)](https://github.com/opengoofy/hippo4j/graphs/contributors) [![License](https://img.shields.io/github/license/opengoofy/hippo4j?color=5470c6)](https://github.com/opengoofy/hippo4j/blob/develop/LICENSE)
|
||||
|
||||
-------
|
||||
|
||||
## Thread pool pain points
|
||||
|
||||
A thread pool is a tool for managing threads based on the idea of pooling.
|
||||
|
||||
Using a thread pool reduces the overhead of creating and destroying threads and avoids running out of system resources due to too many threads.
|
||||
|
||||
The use of thread pools is essential in highly concurrent and high-volume task processing scenarios.
|
||||
|
||||
If you have actually used thread pools in your projects, I believe you may have encountered the following pain points:
|
||||
|
||||
- Thread pools are defined randomly, with too many thread resources, causing high server load.
|
||||
|
||||
- The thread pool parameters are not easily evaluated and the business is at risk of failure.
|
||||
- Thread pool task execution time exceeds the average execution cycle and developers are not informed.
|
||||
- Thread pool tasks pile up and affect business operations.
|
||||
- Wireless process pool monitoring when the service has timeouts, meltdowns, and other problems.
|
||||
- Thread pools do not support the passing of runtime variables, such as MDC contexts.
|
||||
- When a project is closed, a large number of running thread pool tasks are discarded.
|
||||
- Thread pool running, task execution stopped, don't know the problem.
|
||||
|
||||
## What is Hippo-4J
|
||||
|
||||
Hippo-4J through the JDK thread pool enhancements, as well as extending the three-party framework underlying thread pools and other features for business systems to improve online operational security capabilities.
|
||||
|
||||
The following functional support is provided:
|
||||
|
||||
- Global Control - Managing Application Thread Pool Instances.
|
||||
|
||||
- Dynamic changes - dynamically changing thread pool parameters at application runtime.
|
||||
- Notify alarms - Four built-in alarm notification policies.
|
||||
- Run Monitoring - Real-time view of thread pool runtime data.
|
||||
- Feature extensions - support for thread pooling task passing contexts, etc.
|
||||
- Multiple Modes - Two built-in usage modes: Configuration Center Mode and No Middleware Mode.
|
||||
- Container Management - Tomcat, Jetty, Undertow container thread pool runtime view and thread count changes.
|
||||
- Framework adaptation - Dubbo, Hystrix, Polaris, RabbitMQ, RocketMQ and other consumer thread pool runtime data view and thread count changes.
|
||||
|
||||
## Quick Start
|
||||
|
||||
For local presentation purposes, see [Quick start](https://hippo4j.cn/docs/user_docs/user_guide/quick-start).
|
||||
|
||||
Demo Environment: [http://console.hippo4j.cn/index.html](http://console.hippo4j.cn/index.html).
|
||||
|
||||
## Who is using
|
||||
|
||||
More companies with access are welcome to register at [registration address](https://github.com/opengoofy/hippo4j/issues/13), registration is only for product promotion.
|
||||
|
||||
## Contributors
|
||||
Thanks to all the developers who contributed to the project. If interested in contributing, refer to [good first issue](https://github.com/opengoofy/hippo4j/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22).
|
Loading…
Reference in new issue