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