RabbitMQ是否支持按时间从队列中执行进程?

这次可以在RabbitMQ中为呼叫处理程序存储时间吗? RabbitMQ是否支持这个?RabbitMQ是否支持按时间从队列中执行进程?

回答:

是的,它支持,但只能通过额外的插件。

There is more dateiled about that

简单地说,你需要安装插件rabbitmq-plugins enable rabbitmq_delayed_message_exchange,并添加新标题到消息:

byte[] messageBodyBytes = "delayed payload".getBytes(); 

AMQP.BasicProperties.Builder props = new AMQP.BasicProperties.Builder();

headers = new HashMap<String, Object>();

headers.put("x-delay", 5000);

props.headers(headers);

channel.basicPublish("my-exchange", "", props.build(), messageBodyBytes);

所以你需要把x-delay值与毫秒后应该处理此消息。

以上是 RabbitMQ是否支持按时间从队列中执行进程? 的全部内容, 来源链接: utcz.com/qa/257158.html

回到顶部