rabbitMQ 配置
application.yml 配置:
rabbitmq: host: localhost port: 5672 listener: simple: acknowledge-mode: manual prefetch: 1 retry: enabled: true initial-interval: 60000 # 第一次和第二次尝试发布或传递消息之间的间隔: 1分钟 max-attempts: 8 max-interval: 7200000 # 最大重试时间间隔:2小时 multiplier: 2 # 应用于上一重试间隔的乘数
config配置类:
@Configuration public class RabbitConfig { @Bean public RabbitTemplate rabbitTemplate(ConnectionFactory connectionFactory) { RabbitTemplate template = new RabbitTemplate(connectionFactory); template.setMessageConverter(rabbitMessageConverter()); return template; } @Bean(name = "rabbitListenerContainerFactory") public SimpleRabbitListenerContainerFactory rabbitListenerContainerFactory( SimpleRabbitListenerContainerFactoryConfigurer configurer, ConnectionFactory connectionFactory) { SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory(); configurer.configure(factory, connectionFactory); factory.setMessageConverter(rabbitMessageConverter()); return factory; } @Bean public MessageConverter rabbitMessageConverter() { return new Jackson2JsonMessageConverter(); } }