SpringBoot整合RabbitMQ

本文详细介绍了如何在SpringBoot应用中整合RabbitMQ,包括Producer的配置,如publisher-confirms和publisher-returns,确保消息路由成功。同时阐述了Consumer的配置,如设置手工签收模式以增强消息可靠性。还提供了相关链接,覆盖RabbitMQ的高级特性和实践操作。
摘要由CSDN通过智能技术生成

Producer配置

  • publisher-confirms, 实现一个监听器用于监听Broker端给我们返回的确认请求 : RabbitTemplate.ConfirmCallback
  • publisher-returns, 保证消息对Broker端是可达的, 如果出现路由键不可达的情况, 则使用监听器对不可达的消息进行后续的处理, 保证消息的路由成功 : RabbitTemplate.ReturnCallback
  • 注意 : 在发送消息时堆template进行配置mandatory=true, 保证监听有效
  • 生产端还可以配置其他属性, 如发送重试, 超时时间, 重试次数, 间隔等

application.properties或application.yml文件中添加配置 :

spring.rabbitmq.addresses=192.168.72.138:5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
spring.rabbitmq.virtual-host=/
spring.rabbitmq.connection-timeout=15000

spring.rabbitmq.publisher-confirms=true
spring.rabbitmq.publisher-returns=true
spring.rabbitmq.template.mandatory=true

创建生产者类, 添加ConfirmCallback,ReturnCallback :

package qiyexue.rabbitmq.producer;

import org.springframework.amqp.rabbit.connection.CorrelationData;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageHeaders;
import org.springframework.messaging.support.MessageBuilder;
import org.springframework.stereotype.Component;

import java.util.Map;

/**
 * 生产者
 *
 * @author 七夜雪
 * @date 2018-12-24 20:30
 */
@Component
public class Producer {
   
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值