Hippo4j监控RabbitMQ框架的线程池

在这里插入图片描述

线程池管理工具-Hippo4j

AI工具、AI绘图、AI专栏
如果你想学到最前沿、最火爆的技术,赶快加入吧✨
作者简介:硕风和炜,CSDN-Java领域优质创作者,保研|国家奖学金|JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享
恭喜你发现一枚宝藏博主,赶快收入囊中吧
人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?

线程池管理工具-Hippo4j

目录

  • 线程池管理工具-Hippo4j
    • Hippo4j监控RabbitMQ框架的线程池
    • Docker安装部署RabbitMQ框架
    • 运行RibbitMQ & 创建队列Queue
    • hippo4j-client(Springboot项目)中对RabbitMQ配置
      • 导入依赖
      • 编写配置文件
      • 编写配置类
      • 构建消费者
      • 查看消费消息的效果
    • hippo4j监控RabbitMQ
      • 导入指定的依赖即可
      • 重新启动项目
      • 动态修改效果展示
    • 共勉

线程池管理工具-Hippo4j

Hippo4j监控RabbitMQ框架的线程池

Hippo4j支持多种框架的线程池监控功能,其中包括,Dubbo、Hystrix、RabbitMQ、RocketMQ同时还支持SpringCloud中的Stream组件。

以RabbitMQ为测试的效果,来进行监控和修改。

注意: RabbitMQ监控的是消费者消费消息时的线程池信息。

Docker安装部署RabbitMQ框架

Docker安装Rabbitmq超详细教程

运行RibbitMQ & 创建队列Queue

Hippo4j监控RabbitMQ框架的线程池_第1张图片

hippo4j-client(Springboot项目)中对RabbitMQ配置

导入依赖

<dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-amqpartifactId>
dependency>

编写配置文件

spring:
  rabbitmq:
    host: 192.168.10.131  # 你服务的ip地址
    port: 5672
    username: guest
    password: guest
    virtual-host: /

编写配置类

@Configuration
public class RabbitMQThreadPoolConfig {

    /**
     * 构建消费者用到的线程
     * @return
     */
    @Bean
    public ThreadPoolTaskExecutor rabbitThreadPool(){
        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
        executor.setCorePoolSize(5);
        executor.setMaxPoolSize(5);
        executor.setQueueCapacity(100);
        executor.setThreadNamePrefix("rabbit-");
        return executor;
    }

    /**
     * 构建容器工厂,将线程池设置进入
     * @param connectionFactory
     * @return
     */
    @Bean
    public AbstractRabbitListenerContainerFactory<?> defaultContainerFactory(ThreadPoolTaskExecutor rabbitThreadPool,AbstractConnectionFactory connectionFactory){
        DirectRabbitListenerContainerFactory factory = new DirectRabbitListenerContainerFactory();
        factory.setConnectionFactory(connectionFactory);
        connectionFactory.setExecutor(rabbitThreadPool);
        return factory;
    }
}

构建消费者

import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Component
public class TestListener {

    @RabbitListener(queues = "consume-queue",containerFactory = "defaultContainerFactory")
    public void consume(String message){
        System.out.println(Thread.currentThread().getName() + ":消费消息 --> " + message);
    }

}

查看消费消息的效果

Hippo4j监控RabbitMQ框架的线程池_第2张图片

hippo4j监控RabbitMQ

导入指定的依赖即可

根据官方文档中的提示,可以单独引入具体的三方框架依赖的支持,也可以直接全部引入。

单独引入方式

<dependency>
    <groupId>cn.hippo4jgroupId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-dubboartifactId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-alibaba-dubboartifactId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-hystrixartifactId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-rabbitmqartifactId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-rocketmqartifactId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmqartifactId>
    
    <artifactId>hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rabbitmqartifactId>
    <version>1.5.0version>
dependency>

全部引入

<dependency>
    <groupId>cn.hippo4jgroupId>
    <artifactId>hippo4j-spring-boot-starter-adapter-allartifactId>
    <version>1.5.0version>
dependency>

重新启动项目

Hippo4j监控RabbitMQ框架的线程池_第3张图片

动态修改效果展示

修改
Hippo4j监控RabbitMQ框架的线程池_第4张图片

日志输出
在这里插入图片描述

共勉

最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉!

在这里插入图片描述

你可能感兴趣的:(RabbitMQ,Hippo4j,rabbitmq,docker,springboot,hippo4j,线程池)