淘宝收货时间是多久(淘宝怎么看收货时间还有多久)
目前常见的应用软件都有消息的延迟推送的影子,应用也极为广泛,例如:
在上面两种场景中,如果我们使用下面两种传统解决方案无疑大大降低了系统的整体性能和吞吐量:
消息延迟推送的实现
在 RabbitMQ 3.6.x 之前我们一般采用死信队列 TTL过期时间来实现延迟队列,我们这里不做过多介绍。
在 RabbitMQ 3.6.x 开始,RabbitMQ 官方提供了延迟队列的插件,可以下载放置到 RabbitMQ 根目录下的 plugins 下。
图片
首先我们创建交换机和消息队列,application.properties 中配置与上一篇文章相同。
import org.springframework.amqp.core.*;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import java.util.HashMap;import java.util.Map;@Configurationpublic class MQConfig { public static final String LAZY_EXCHANGE = "Ex.LazyExchange"; public static final String LAZY_QUEUE = "MQ.LazyQueue"; public static final String LAZY_KEY = "lazy.#"; @Bean public TopicExchange lazyExchange(){ //Map