延迟处理是一个非常常用的一个功能;
例如, 下单成功后,在30分钟内没有支付,自动取消订单;
延迟队列便是延迟处理中最常见的实现方式;
在了解基于Redis的延迟处理之前, 有必要先看下JDK中延迟队列是如何实现的..., 可以根据不同的底层存储介质替换PriorityQueue实现....Redis Zset
在上述DelayQueue框架的基础上, 使用zset代替PriorityQueue存储, 并用延迟时间作为zset的score项, 很容易就能实现一个分布式的高性能延迟队列....Redis过期事件监听
利用Redis的事件监听机制, 还有另外一种方式实现延迟处理....过期时间, 当key过期时, 便能触发监听事件, 完成延迟处理逻辑.