java – 我怎么知道我的消息是用spring amqp成功发送的?

我使用RabbitTemplate类使用 spring amqp写入RabbitMQ队列.我使用convertAndSend方法将消息发送到队列.这在正常情况下运行良好,但如果队列不存在,它似乎无声地失败.不会抛出异常,也不会将错误/调试消息记录到记录器中.

确保邮件发送的最佳方式是什么?

以下是代码当前正在执行的操作的示例.

RabbitTemplate template = new RabbitTemplate(factory);
template.setQueue(queueName);
template.setRoutingKey(queueName);
template.convertAndSend(message);

解决方法

RabbitMQ客户端将消息发送到没有绑定队列以接受消息的代理并不是错误. RabbitMQ将地放弃它,客户端将不再明智.如果你没有对你的消息感兴趣的队列,那么经纪人还没有其他许多选择.

也就是说,如果通过设置mandatory标志消息将以静方式丢弃,您可以让RabbitMQ抱怨.我不知道Spring AMQP接口是否支持它,但它确实可以在RabbitMQ Java客户端库中使用.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...