rocketMQ定时和延时消息

定时消息和延时消息适用于以下一些场景:

消息生产和消费有时间窗口要求:比如在电商交易中超时未支付关闭订单的场景,在订单创建时会发送一条延时消息。这条消息将会在 30 分钟以后投递给消费者,消费者收到此消息后需要判断对应的订单是否已完成支付。如支付未完成,则关闭订单。如已完成支付则忽略。
通过消息触发一些定时任务,比如在某一固定时间点向用户发送提醒消息。

定时消息

 // 定时消息,单位毫秒(ms),在指定时间戳(当前时间之后)进行投递,。
  long timeStamp = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("2016-03-07 16:21:00").getTime();
  msg.setStartDeliverTime(timeStamp);
  SendResult sendResult = producer.send(msg);

延时消息
和定时消息类似
只要将当前时间+想要延迟的时间传入Message就可以了,注意单位是毫秒。

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页