我的情况。我有队列容器元素与确切的时间交付。我用rabbitmq实现的 Spring 启动支持。现在我应该发送消息到队列和延迟时间后队列将交付消息。Rabbitmq支持rabbitmq-延迟-消息-交换插件来调度消息。但我不实现。什么错误在我的代码。(我启用插件延迟)
@Bean
DirectExchange directExchange() {
Map<String, Object> args = new HashMap<String, Object>();
args.put("x-delayed-type", "x-delayed-message");
return new DirectExchange("my-exchange", true, false, args);
}
@Bean
Binding binding(Queue queue, DirectExchange directExchange) {
return BindingBuilder.bind(queue).to(directExchange).with(queueName);
}
“发布答案”按钮应仅用于完整回答问题。
1条答案
按热度按时间mo49yndu1#
请看类似问题的适当答案。
Scheduled/Delay messaging in Spring AMQP RabbitMq
你的问题就在这里:
从另一方面,我们介绍了 Spring AMQP 1.6中的延迟交换:是的。
更新
Binding
应声明为:要使用
delay
发送消息,您应该执行几乎与您尝试过的操作相同的操作: