docs/blog/2022-06-06-hippo4j/index.md
大家好,我是 小马哥。
Hippo4j 距离上一个版本 1.2.1 已经过去一个月的时间。在此期间,由 8 位贡献者 提交了 170+ commits,正式发布 1.3.0 版本。
注:这是一个 兼容历史版本 的重大升级。
Hippo4j 1.3.0 最大的功能发布就是开发出了 适配三方框架的基础框架。
目前已完成 Dubbo、RabbitMQ、RocketMQ、RocketMQSpringCloudStream 的线程池适配,后续还会接入 Kafka、Hystrix 等框架或中间件的线程池适配。
引入 Hippo4j server 或 core 的 maven jar 坐标后,还需要引入对应的框架适配 jar:
<dependency>
<groupId>cn.hippo4j</groupId>
<!-- Dubbo -->
<artifactId>hippo4j-spring-boot-starter-adapter-dubbo</artifactId>
<!-- RabbitMQ -->
<artifactId>hippo4j-spring-boot-starter-adapter-rabbitmq</artifactId>
<!-- RocketMQ -->
<artifactId>hippo4j-spring-boot-starter-adapter-rocketmq</artifactId>
<!-- SpringCloud Stream RocketMQ -->
<artifactId>hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmq</artifactId>
<version>1.3.0</version>
</dependency>
如果想觉得引入多个 jar 包繁琐,可以仅需引入一个全量包,Hippo4j 框架底层会根据各中间件的条件,判断加载具体线程池适配器。
<dependency>
<groupId>cn.hippo4j</groupId>
<artifactId>hippo4j-spring-boot-starter-adapter-all</artifactId>
<version>1.3.0</version>
</dependency>
Hippo4j server 引入上述适配 jar 包后,即可在 Hippo4j server 的控制台进行查看及修改三方框架线程池。
点击编辑即可修改该 Java 应用对应的框架底层线程池。
点击 全部修改 按钮可以修改当前组下所有应用实例的线程池配置。
修改成功后,应用控制台打印以下日志,即为修改成功。
[input] RocketMQ consumption thread pool parameter change. coreSize :: 1 => 10, maximumSize :: 1 => 10
Hippo4j core 除了依赖上述适配 Jar 包外,还需要在配置中心添加以下配置项。
spring:
dynamic:
thread-pool:
# 省略其它配置
adapter-executors:
# threadPoolKey 代表线程池标识
- threadPoolKey: 'input'
# mark 为三方线程池框架类型,参见文初已支持框架集合
mark: 'RocketMQSpringCloudStream'
corePoolSize: 10
maximumPoolSize: 10
Hippo4j 获得了一些宝贵的荣誉,这属于每一位对 Hippo4j 做出过贡献的成员。
感谢所有为 Hippo4j 做出贡献的开发者!
https://github.com/opengoofy/hippo4j/graphs/contributors
开源不易,如果各位小伙伴看了 Hippo4j 框架后有所收获,希望能帮忙在 Github、Gitee 点个 star,谢谢。
Github:https://github.com/opengoofy/hippo4j
Gitee:https://gitee.com/mabaiwancn/hippo4j
目前已有 10+ 公司在生产环境使用 Hippo4j,如果贵公司使用了 Hippo4j,请在下方 Issue 登记,谢谢。
Issue:https://github.com/opengoofy/hippo4j/issues/13
登记使用不会对公司有任何影响,仅为了扩大 Hippo4j 影响力,帮助它能走得更远。