.Net框架中如何实现延迟队列功能?

更新于
2026-10-09 13:49:30
1阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2008个文字,预计阅读时间需要9分钟。

.Net框架中如何实现延迟队列功能?

介绍+具有队列特性的功能,新增一个延迟消费队列消息的功能,即指定队列中消息的延迟消费时间。+使用场景+延迟队列在项目中应用较多,例如电商平台的订单处理、邮件发送等。+延迟队列在项目中的应用比比较多的,例如类似电商平台的订单处理。

介绍

具有队列的特性,再给它附加一个延迟消费队列消息的功能,也就是说可以指定队列中的消息在哪个时间点被消费。

使用场景

延时队列在项目中的应用还是比较多的,尤其像电商类平台:

  1. 订单成功后,在30分钟内没有支付,自动取消订单
  2. 外卖平台发送订餐通知,下单成功后60s给用户推送短信。
  3. 如果订单一直处于某一个未完结状态时,及时处理关单,并退还库存
  4. 淘宝新建商户一个月内还没上传商品信息,将冻结商铺等

该介绍来自其他文章

方案

下面的例子没有进行封装,所以代码仅供参考

Redis过期事件

注意:

不保证在设定的过期时间立即删除并发送通知,数据量大的时候会延迟比较大

不保证一定送达

发送即忘策略,不包含持久化

但是比如有些场景,对这个时间不是那么看重,并且有其他措施双层保障,该实现方案是比较简单。

redis自2.8.0之后版本提供Keyspace Notifications功能,允许客户订阅Pub / Sub频道,以便以某种方式接收影响Redis数据集事件。

阅读全文
标签:特性

本文共计2008个文字,预计阅读时间需要9分钟。

.Net框架中如何实现延迟队列功能?

介绍+具有队列特性的功能,新增一个延迟消费队列消息的功能,即指定队列中消息的延迟消费时间。+使用场景+延迟队列在项目中应用较多,例如电商平台的订单处理、邮件发送等。+延迟队列在项目中的应用比比较多的,例如类似电商平台的订单处理。

介绍

具有队列的特性,再给它附加一个延迟消费队列消息的功能,也就是说可以指定队列中的消息在哪个时间点被消费。

使用场景

延时队列在项目中的应用还是比较多的,尤其像电商类平台:

  1. 订单成功后,在30分钟内没有支付,自动取消订单
  2. 外卖平台发送订餐通知,下单成功后60s给用户推送短信。
  3. 如果订单一直处于某一个未完结状态时,及时处理关单,并退还库存
  4. 淘宝新建商户一个月内还没上传商品信息,将冻结商铺等

该介绍来自其他文章

方案

下面的例子没有进行封装,所以代码仅供参考

Redis过期事件

注意:

不保证在设定的过期时间立即删除并发送通知,数据量大的时候会延迟比较大

不保证一定送达

发送即忘策略,不包含持久化

但是比如有些场景,对这个时间不是那么看重,并且有其他措施双层保障,该实现方案是比较简单。

redis自2.8.0之后版本提供Keyspace Notifications功能,允许客户订阅Pub / Sub频道,以便以某种方式接收影响Redis数据集事件。

阅读全文
标签:特性