温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

RabbitMQ的工作模式实例代码分析

发布时间:2022-09-27 16:21:07 来源:亿速云 阅读:90 作者:iii 栏目:开发技术

这篇文章主要讲解了“RabbitMQ的工作模式实例代码分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“RabbitMQ的工作模式实例代码分析”吧!

SpringBoot RabbitMQ 工作模式

生产者声明队列并向队列生成消息

导入 com.example.rabbitmq.constant.RabbitConstant;
导入 org.springframework.amqp.core.Queue;
导入 org.springframework.context.annotation.Bean;
导入 org.springframework.context.annotation.Configuration;
@Configuration公共类 RabbitWorkProvider { 
    @Bean
    公共队列 workQueue() { 
        return new Queue(RabbitConstant.WORK_QUEUE_NAME); 
    } 
}

消费者监听队列并消费消息(有两个消费者监听同一个队列)

导入 com.example.rabbitmq.constant.RabbitConstant;
导入 org.springframework.amqp.rabbit.annotation.RabbitHandler;
导入 org.springframework.amqp.rabbit.annotation.RabbitListener;
导入 org.springframework.stereotype.Component;
@Component public class RabbitWorkConsumer { 
    @RabbitListener(queues = RabbitConstant.WORK_QUEUE_NAME) 
    @RabbitHandler 
    public void workQueueListenerFirst(String context) { 
        System.out.println("rabbit workQueue listener first receiver:" + context); 
    } 
    @RabbitListener(queues = RabbitConstant.WORK_QUEUE_NAME) 
    @RabbitHandler 
    public void workQueueListenerSecond(String context) {        System.out.println("rabbit workQueue listener 第二个接收者:" + context); 
    } 
}

单元测试

@Test public void work() { 
    rabbitTemplate.convertAndSend(RabbitConstant.WORK_QUEUE_NAME, "工作你好!"); 
}

响应结果(由于有两个消费者监听同一个队列,所以消息只能被其中一个消费者消费。默认情况下,消息是负载均衡发送给所有消费者的)

感谢各位的阅读,以上就是“RabbitMQ的工作模式实例代码分析”的内容了,经过本文的学习后,相信大家对RabbitMQ的工作模式实例代码分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI