diff --git a/docs/docs/community/contributor.md b/docs/docs/community/contributor.md
index 5a6fb5b4..7e7d9a4a 100644
--- a/docs/docs/community/contributor.md
+++ b/docs/docs/community/contributor.md
@@ -4,12 +4,11 @@ sidebar_position: 1
# 开发者指南
-
为了让您的 id 显示在 contributor 列表中,别忘了以下设置:
```shell
git config --global user.name "username"
-git config --global user.email "github账号邮箱"
+git config --global user.email "GitHub 账号邮箱"
```
## 开发者列表
diff --git a/docs/docs/community/developer.md b/docs/docs/community/developer.md
index 3c9c9f45..555e78f8 100644
--- a/docs/docs/community/developer.md
+++ b/docs/docs/community/developer.md
@@ -4,10 +4,9 @@ sidebar_position: 2
# 核心开发者
-
diff --git a/docs/docs/community/sponsor.md b/docs/docs/community/sponsor.md
index 79e4ce4d..5a7e851d 100644
--- a/docs/docs/community/sponsor.md
+++ b/docs/docs/community/sponsor.md
@@ -4,10 +4,9 @@ sidebar_position: 4
# 支持开源
-如果您正在使用这个项目并感觉良好,或者是想支持我继续开发,您可以通过如下 `任意` 方式支持我:
+如果您正在使用这个项目并感觉良好,或者是想支持我继续开发。通过以下二维码 一次性捐款,我多半会买一杯咖啡或茶~
-- GitHub Star 并分享动态线程池框架 [Hippo4J](https://github.com/opengoofy/hippo4j)
-- 通过以下二维码 一次性捐款。我多半会买一杯咖啡或茶~
+> [GitHub](https://github.com/opengoofy/hippo4j) 或 [Gitee](https://gitee.com/agentart/hippo4j) Star 才是最大动力~
![](https://images-machen.oss-cn-beijing.aliyuncs.com/IMG_6719_2.jpg?x-oss-process=image/resize,h_180,w_180)
diff --git a/docs/docs/user_docs/getting-started/difference.md b/docs/docs/user_docs/getting-started/difference.md
index 669b89b7..8f81e25d 100644
--- a/docs/docs/user_docs/getting-started/difference.md
+++ b/docs/docs/user_docs/getting-started/difference.md
@@ -8,7 +8,7 @@ sidebar_position: 0
![](https://images-machen.oss-cn-beijing.aliyuncs.com/image-20220319154626314.png)
-### hippo4j-core
+### hippo4j-config
**轻量级动态线程池管理**,依赖 Apollo、Nacos、Zookeeper 等三方配置中心(任选其一)完成线程池参数动态变更,支持运行时报警、监控等功能。
@@ -20,20 +20,18 @@ sidebar_position: 0
**部署 hippo4j-server 服务**,通过可视化 Web 界面完成线程池的创建、变更以及查看,不依赖三方中间件。
-相比较 hippo4j-core,功能会更强大,但同时也引入了一定的复杂性。需要部署一个 Java 服务,以及依赖 MySQL 数据库。
+相比较 hippo4j-config,功能会更强大,但同时也引入了一定的复杂性。需要部署一个 Java 服务,以及依赖 MySQL 数据库。
![](https://images-machen.oss-cn-beijing.aliyuncs.com/1644032018254-min.gif)
-
-
### 使用总结
-| | hippo4j-core | hippo4j-server |
+| | hippo4j-config | hippo4j-server |
| ---- | ---------------------------------------------------- | ------------------------------------------------------------ |
| 依赖 | Nacos、Apollo、Zookeeper 配置中心(任选其一) | 部署 Hippo-4J Server(内部无依赖中间件) |
| 使用 | 配置中心补充线程池相关参数 | Hippo-4J Server Web 控制台添加线程池记录 |
| 功能 | 包含基础功能:参数动态化、运行时监控、报警等 | 基础功能之外扩展控制台界面、线程池堆栈查看、线程池运行信息实时查看、历史运行信息查看、线程池配置集群个性化等 |
-使用建议:根据公司情况选择,如果基本功能可以满足使用,选择 hippo4j-core 使用即可;如果希望更多的功能,可以选择 hippo4j-server。
+使用建议:根据公司情况选择,如果基本功能可以满足使用,选择 hippo4j-config 使用即可;如果希望更多的功能,可以选择 hippo4j-server。
**两者在进行替换的时候,无需修改业务代码**。
diff --git a/docs/docs/user_docs/getting-started/hippo4j-adapter.md b/docs/docs/user_docs/getting-started/hippo4j-adapter.md
index 3608bd9b..9ba07962 100644
--- a/docs/docs/user_docs/getting-started/hippo4j-adapter.md
+++ b/docs/docs/user_docs/getting-started/hippo4j-adapter.md
@@ -10,6 +10,7 @@ Hippo4J 目前已支持的三方框架线程池列表:
- Hystrix
- RabbitMQ
- RocketMQ
+- AlibabaDubbo
- RocketMQSpringCloudStream
引入 Hippo4J Server 或 Core 的 Maven Jar 坐标后,还需要引入对应的框架适配 Jar:
@@ -19,6 +20,8 @@ Hippo4J 目前已支持的三方框架线程池列表:
cn.hippo4j
hippo4j-spring-boot-starter-adapter-dubbo
+
+ hippo4j-spring-boot-starter-adapter-alibaba-dubbo
hippo4j-spring-boot-starter-adapter-hystrix
@@ -27,7 +30,7 @@ Hippo4J 目前已支持的三方框架线程池列表:
hippo4j-spring-boot-starter-adapter-rocketmq
hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmq
- 1.3.1
+ 1.4.0
```
@@ -37,7 +40,7 @@ Hippo4J 目前已支持的三方框架线程池列表:
cn.hippo4j
hippo4j-spring-boot-starter-adapter-all
- 1.3.1
+ 1.4.0
```
diff --git a/docs/docs/user_docs/getting-started/hippo4j-core-monitor.md b/docs/docs/user_docs/getting-started/hippo4j-core-monitor.md
index 72e356a7..29e67c56 100644
--- a/docs/docs/user_docs/getting-started/hippo4j-core-monitor.md
+++ b/docs/docs/user_docs/getting-started/hippo4j-core-monitor.md
@@ -2,9 +2,9 @@
sidebar_position: 2
---
-# hippo4j core 线程池监控
+# hippo4j config 线程池监控
-已完成 hippo4j-core 的 [接入工作](/docs/user_docs/getting-started/hippo4j-core-start) 。
+已完成 hippo4j-config 的 [接入工作](/docs/user_docs/getting-started/hippo4j-core-start) 。
## 安装 Grafana + Prometheus
diff --git a/docs/docs/user_docs/getting-started/hippo4j-core-start.md b/docs/docs/user_docs/getting-started/hippo4j-core-start.md
index a634f543..5ae1c30e 100644
--- a/docs/docs/user_docs/getting-started/hippo4j-core-start.md
+++ b/docs/docs/user_docs/getting-started/hippo4j-core-start.md
@@ -2,7 +2,7 @@
sidebar_position: 1
---
-# hippo4j core 接入
+# hippo4j config 接入
Nacos、Apollo、Zookeeper 配置中心任选其一。
@@ -12,7 +12,7 @@ Nacos、Apollo、Zookeeper 配置中心任选其一。
cn.hippo4j
hippo4j-config-spring-boot-starter
- 1.3.1
+ 1.4.0
```
@@ -42,54 +42,79 @@ spring:
dynamic:
thread-pool:
- enable: true # 是否开启动态线程池
- banner: true # 是否打印 banner
- collect: true # 是否开启线程池数据采集,对接 Prometheus
- notify-platforms: # 通知报警平台,⚠️ 请替换为自己创建的群机器人
- - platform: 'WECHAT' # 企业微信
- token: 1d307bfa-815f-4662-a2e5-99415e947bb8
- - platform: 'DING' # 钉钉
- token: 56417ebba6a27ca352f0de77a2ae9da66d01f39610b5ee8a6033c60ef9071c55
- secret: SEC40943de20b51e993b47e9a55490a168f1c9e00bdb4f0fb15b1d9e4b58f8b05f3 # 加签
- - platform: 'LARK' # 飞书
- token: 2cbf2808-3839-4c26-a04d-fd201dd51f9e
- nacos: # nacos apollo 任选其一
+ # 是否开启动态线程池
+ enable: true
+ # 是否打印 banner
+ banner: true
+ # 是否开启线程池数据采集,对接 Prometheus、ES、Log 等
+ collect: true
+ # 检查线程池状态,是否达到报警条件,单位毫秒
+ check-state-interval: 3000
+ # 通知报警平台,请替换为自己创建的群机器人
+ notify-platforms:
+ - platform: 'WECHAT'
+ token: xxx
+ - platform: 'DING'
+ token: xxx
+ secret: xxx # 加签专属
+ - platform: 'LARK'
+ token: xxx
+ # nacos apollo、zookeeper 任选其一
+ nacos:
data-id: xxx
group: xxx
apollo:
namespace: xxxx
- config-file-type: yml # 配置中心文件格式
- # tomcat:
- # jetty:
- undertow: # 三种容器线程池,任选其一
+ # 配置中心文件格式
+ config-file-type: yml
+ # tomcat、undertow、jetty 三种容器线程池,任选其一
+ undertow:
core-pool-size: 100
maximum-pool-size: 200
keep-alive-time: 1000
- # 全局通知配置
- alarm: true # 是否报警
- check-state-interval: 3000 # 检查线程池状态,是否达到报警条件,单位毫秒
- active-alarm: 80 # 活跃度报警阈值;假设线程池最大线程数 10,当线程数达到 8 发起报警
- capacity-alarm: 80 # 容量报警阈值;假设阻塞队列容量 100,当容量达到 80 发起报警
- alarm-interval: 8 # 报警间隔,同一线程池下同一报警纬度,在 interval 时间内只会报警一次,单位秒
- receive: xxx # 企业微信填写用户 ID(填写其它将无法达到 @ 效果)、钉钉填手机号、飞书填 ou_ 开头唯一 ID
- # 线程池配置
+ # 全局通知配置-是否报警
+ alarm: true
+ # 活跃度报警阈值;假设线程池最大线程数 10,当线程数达到 8 发起报警
+ active-alarm: 80
+ # 容量报警阈值;假设阻塞队列容量 100,当容量达到 80 发起报警
+ capacity-alarm: 80
+ # 报警间隔,同一线程池下同一报警纬度,在 interval 时间内只会报警一次,单位秒
+ alarm-interval: 8
+ # 企业微信填写用户 ID(填写其它将无法达到 @ 效果)、钉钉填手机号、飞书填 ou_ 开头唯一 ID
+ receive: xxx
+ # 动态线程池列表
executors:
- - thread-pool-id: 'message-consume' # 线程池标识
- core-pool-size: 1 # 核心线程数
- maximum-pool-size: 1 # 最大线程数
- queue-capacity: 1 # 阻塞队列大小
- execute-time-out: 1000 # 执行超时时间,超过此时间发起报警
- blocking-queue: 'LinkedBlockingQueue' # 阻塞队列名称,参考 QueueTypeEnum,支持 SPI
- rejected-handler: 'AbortPolicy' # 拒绝策略名称,参考 RejectedPolicies,支持 SPI
- keep-alive-time: 1024 # 线程存活时间,单位秒
- allow-core-thread-time-out: true # 是否允许核心线程超时
- thread-name-prefix: 'message-consume' # 线程名称前缀
- notify: # 通知配置,线程池中通知配置如果存在,则会覆盖全局通知配置
- is-alarm: true # 是否报警
- active-alarm: 80 # 活跃度报警阈值;假设线程池最大线程数 10,当线程数达到 8 发起报警
- capacity-alarm: 80 # 容量报警阈值;假设阻塞队列容量 100,当容量达到 80 发起报警
- interval: 8 # 报警间隔,同一线程池下同一报警纬度,在 interval 时间内只会报警一次,单位分钟
- receive: xxx # 企业微信填写用户 ID(填写其它将无法达到 @ 效果)、钉钉填手机号、飞书填 ou_ 开头唯一 ID
+ - thread-pool-id: 'message-consume'
+ # 核心线程数
+ core-pool-size: 1
+ # 最大线程数
+ maximum-pool-size: 1
+ # 阻塞队列名称,参考 BlockingQueueTypeEnum,支持 SPI
+ blocking-queue: 'LinkedBlockingQueue'
+ # 阻塞队列大小
+ queue-capacity: 1
+ # 执行超时时间,超过此时间发起报警,单位毫秒
+ execute-time-out: 1000
+ # 拒绝策略名称,参考 RejectedPolicyTypeEnum,支持 SPI
+ rejected-handler: 'AbortPolicy'
+ # 线程存活时间,单位秒
+ keep-alive-time: 1024
+ # 是否允许核心线程超时
+ allow-core-thread-time-out: true
+ # 线程工厂名称前缀
+ thread-name-prefix: 'message-consume'
+ # 是否报警
+ alarm: true
+ # 活跃度报警阈值;假设线程池最大线程数 10,当线程数达到 8 发起报警
+ active-alarm: 80
+ # 容量报警阈值;假设阻塞队列容量 100,当容量达到 80 发起报警
+ capacity-alarm: 80
+ # 通知配置,线程池中通知配置如果存在,则会覆盖全局通知配置
+ notify:
+ # 报警间隔,同一线程池下同一报警纬度,在 interval 时间内只会报警一次,单位分钟
+ interval: 8
+ # 企业微信填写用户 ID(填写其它将无法达到 @ 效果)、钉钉填手机号、飞书填 ou_ 开头唯一 ID
+ receive: xxx
- thread-pool-id: 'message-produce'
core-pool-size: 1
maximum-pool-size: 1
@@ -100,10 +125,10 @@ spring:
keep-alive-time: 1024
allow-core-thread-time-out: true
thread-name-prefix: 'message-consume'
+ alarm: true
+ active-alarm: 80
+ capacity-alarm: 80
notify:
- is-alarm: true
- active-alarm: 80
- capacity-alarm: 80
interval: 8
receive: xxx
```
diff --git a/docs/docs/user_docs/getting-started/hippo4j-server-start.md b/docs/docs/user_docs/getting-started/hippo4j-server-start.md
index 859776b1..b18d679e 100644
--- a/docs/docs/user_docs/getting-started/hippo4j-server-start.md
+++ b/docs/docs/user_docs/getting-started/hippo4j-server-start.md
@@ -22,7 +22,7 @@ SpringBoot Pom 引入 Hippo4j Starter Jar。
cn.hippo4j
hippo4j-spring-boot-starter
- 1.3.1
+ 1.4.0
```
diff --git a/docs/docs/user_docs/ops/hippo4j-server-deploy.md b/docs/docs/user_docs/ops/hippo4j-server-deploy.md
index a3b16dc9..d605704a 100644
--- a/docs/docs/user_docs/ops/hippo4j-server-deploy.md
+++ b/docs/docs/user_docs/ops/hippo4j-server-deploy.md
@@ -4,8 +4,7 @@ sidebar_position: 1
# hippo4j server 部署
-
-[RELEASE](https://github.com/longtai-cn/hippo4j/releases) 页面下载对应版本并进行解压。
+[RELEASE](https://github.com/opengoofy/hippo4j/releases) 页面下载对应版本并进行解压。
## 初始化
@@ -15,12 +14,14 @@ sidebar_position: 1
/conf/application.properties
```
-数据库执行 SQL 脚本。
+如果是新运行 Hippo-4J,数据库执行下述 SQL 脚本即可。
```txt
/conf/hippo4j_manager.sql
```
+如果是对已运行 Hippo-4J 升级,请查看 `/conf/sql-upgrade` 目录下,是否有目标版本对应的升级脚本。
+
## 直接运行
Mac Linux 启动执行。
diff --git a/docs/docs/user_docs/other/issue.md b/docs/docs/user_docs/other/issue.md
index 90121b14..8e09026e 100644
--- a/docs/docs/user_docs/other/issue.md
+++ b/docs/docs/user_docs/other/issue.md
@@ -80,9 +80,10 @@ Hippo4J 发布时可能会涉及到两端发布,分别是 Server 和 Starter
重启客户端项目,会重新拉取最新报警推送配置,问题解决。
## 设置线程池参数优先级问题
-- 当使用`@DynamicThreadPool`进行修饰的方法中和在管理界面设置中同时存在的话,则管理界面设置的优先级最高;
-- 如果连接service端失败的话,使用`@DynamicThreadPool`进行修饰设置的优先级最高。
+
+- 当使用 `@DynamicThreadPool` 进行修饰的方法中和在管理界面设置中同时存在的话,则管理界面设置的优先级最高;
+- 如果连接 server 端失败的话,使用 `@DynamicThreadPool` 进行修饰设置的优先级最高。
## 线程池实例中修改队列容量参数问题
-在线程池管理中添加时,只有当选择队列类型为`ResizableCapacityLinkedBlockingQueue`时,后续再进行修改容量大小时才会实时的刷新修改成功。
\ No newline at end of file
+在线程池管理中添加时,只有当选择队列类型为 `ResizableCapacityLinkedBlockingQueue` 时,后续再进行修改容量大小时才会实时的刷新修改成功。
\ No newline at end of file
diff --git a/docs/docs/user_docs/user_guide/framework.md b/docs/docs/user_docs/user_guide/framework.md
index 6403dec0..a6b245f4 100644
--- a/docs/docs/user_docs/user_guide/framework.md
+++ b/docs/docs/user_docs/user_guide/framework.md
@@ -38,15 +38,6 @@ Client 端指的是我们 SpringBoot 应用,通过引入 Hippo4J Starter Jar
![](https://images-machen.oss-cn-beijing.aliyuncs.com/image-20211107122504126.png)
-
-### 抽象工具(Tools)
-
-顾名思义就是将某些工具单独抽象出来,并以 Module 的形式进行展现,这样的拆分方式有两点好处:**一是更符合职责分离特性,二是需要用到某块功能**,做到拿来即用。
-
-
-log-record-tool:基于 [mzt-biz-log](https://github.com/mouzt/mzt-biz-log "mzt-biz-log") 的操作日志变更记录组件。
-
-
## 消息通知(Notify)
Hippo4J 内置了很多需要通知的事件,比如:线程池参数变更通知、线程池活跃度报警、拒绝策略执行报警以及阻塞队列容量报警等。
diff --git a/docs/docs/user_docs/user_guide/quick-start.md b/docs/docs/user_docs/user_guide/quick-start.md
index a4124dc1..9dddd492 100644
--- a/docs/docs/user_docs/user_guide/quick-start.md
+++ b/docs/docs/user_docs/user_guide/quick-start.md
@@ -15,7 +15,7 @@ Clone Hippo4J [源代码](https://github.com/longtai-cn/hippo4j),导入初始
1. 导入 [Hippo4J 初始化 SQL 语句](https://github.com/longtai-cn/hippo4j/blob/develop/hippo4j-server/conf/hippo4j_manager.sql);
2. 启动 [Hippo4J-Server](https://github.com/longtai-cn/hippo4j/tree/develop/hippo4j-server) 模块下 ServerApplication 应用类;
-3. 启动 [Hippo4J-spring-boot-starter-example](https://github.com/opengoofy/hippo4j/tree/develop/hippo4j-example/hippo4j-spring-boot-starter-example) 模块下 Hippo4JServerExampleApplication 应用类。
+3. 启动 [hippo4J-spring-boot-starter-example](https://github.com/opengoofy/hippo4j/tree/develop/hippo4j-example/hippo4j-spring-boot-starter-example) 模块下 Hippo4JServerExampleApplication 应用类。
通过 Server 控制台访问,路径:`http://localhost:6691/index.html#/hippo4j/dynamic/thread-pool/instance`。
@@ -26,7 +26,7 @@ Clone Hippo4J [源代码](https://github.com/longtai-cn/hippo4j),导入初始
修改相关参数, 观察 Hippo4j-Example 控制台日志输出,日志输出包括不限于此信息即为成功。
```tex
-2022-08-13 21:26:25.814 INFO 38972 --- [change.config-5] c.h.s.s.c.ServerThreadPoolDynamicRefresh : Dynamic thread pool change parameter: [message-produce]
+2022-08-13 21:26:25.814 INFO 38972 --- [change.config-5] c.h.s.s.c.ServerThreadPoolDynamicRefresh : [message-consume] Dynamic thread pool change parameter.
corePoolSize: [5 => 5]
maximumPoolSize: [6 => 7]
capacity: [10 => 10]
@@ -36,6 +36,6 @@ Clone Hippo4J [源代码](https://github.com/longtai-cn/hippo4j),导入初始
allowCoreThreadTimeOut: [false => false]
```
-另外,当 Client 集群部署时,可以修改某一个实例或选择 `全部修改` 按钮,修改所有实例线程池信息。
+另外,当 Client 集群部署时,可以修改某一个实例,或选择 `全部修改` 按钮,修改所有实例线程池信息。
线程池参数动态变更通知,或线程池运行时报警,详情参考 [通知报警](/docs/user_docs/user_guide/alarm.md)。