提交 b57bb9ba authored 作者: huyufan's avatar huyufan

修改BUG

上级 c401bdd5
package com.clx.performance.config; package com.clx.performance.config;
import com.clx.performance.constant.RabbitKeyConstants; import com.clx.performance.constant.RabbitKeyConstants;
import org.springframework.amqp.core.Binding; import org.springframework.amqp.core.*;
import org.springframework.amqp.core.BindingBuilder; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.amqp.core.DirectExchange;
import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
...@@ -93,32 +91,32 @@ public class RabbitBeanConfig { ...@@ -93,32 +91,32 @@ public class RabbitBeanConfig {
/** /**
* 货单挂单队列 // * 货单挂单队列
* @return // * @return
*/ // */
@Bean // @Bean
public Queue orderGoodsOnQueue() { // public Queue orderGoodsOnQueue() {
Map<String, Object> params = new HashMap<>(6); // Map<String, Object> params = new HashMap<>(6);
params.put("x-dead-letter-exchange", RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE); // params.put("x-dead-letter-exchange", RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE);
params.put("x-dead-letter-routing-key", RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY); // params.put("x-dead-letter-routing-key", RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY);
return new Queue(RabbitKeyConstants.ORDER_GOODS_ON_QUEUE, true, false, false, params); // return new Queue(RabbitKeyConstants.ORDER_GOODS_ON_QUEUE, true, false, false, params);
} // }
//
/** // /**
* 货单挂单中交换机 // * 货单挂单中交换机
**/ // **/
@Bean // @Bean
public DirectExchange orderGoodsOnExchange() { // public DirectExchange orderGoodsOnExchange() {
return new DirectExchange(RabbitKeyConstants.ORDER_GOODS_ON_EXCHANGE); // return new DirectExchange(RabbitKeyConstants.ORDER_GOODS_ON_EXCHANGE);
} // }
//
/** // /**
* 货单挂单中绑定 // * 货单挂单中绑定
*/ // */
@Bean // @Bean
public Binding orderGoodsOnExchangeBind() { // public Binding orderGoodsOnExchangeBind() {
return BindingBuilder.bind(orderGoodsOnQueue()).to(orderGoodsOnExchange()).with(RabbitKeyConstants.ORDER_GOODS_ON_ROUTE_KEY); // return BindingBuilder.bind(orderGoodsOnQueue()).to(orderGoodsOnExchange()).with(RabbitKeyConstants.ORDER_GOODS_ON_ROUTE_KEY);
} // }
/** /**
* 死信队列:死信队列处理延迟消息货单挂单 * 死信队列:死信队列处理延迟消息货单挂单
...@@ -133,19 +131,26 @@ public class RabbitBeanConfig { ...@@ -133,19 +131,26 @@ public class RabbitBeanConfig {
* 货单挂单中交换机:死信队列处理延迟消息 * 货单挂单中交换机:死信队列处理延迟消息
**/ **/
@Bean @Bean
public DirectExchange orderGoodsOnDeadExchange() { public CustomExchange orderGoodsOnDeadExchange() {
return new DirectExchange(RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE); Map<String, Object> arguments = new HashMap<>();
//设置路由模式 direct模式
arguments.put("x-delayed-type", "direct");
return new CustomExchange(RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE,"x-delayed-message", true, false, arguments);
} }
/** /**
* 货单挂单中绑定:死信队列处理延迟消息 * 货单挂单中绑定:死信队列处理延迟消息
*/ */
// @Bean
// public Binding orderGoodsDeadExchangeBind() {
// return BindingBuilder.bind(orderGoodsOnDeadQueue()).to(orderGoodsOnDeadExchange()).with(RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY);
// }
//绑定交换机,队列和routingKey
@Bean @Bean
public Binding orderGoodsDeadExchangeBind() { public Binding delayedQueueBindingDelayedExchange(@Qualifier("orderGoodsOnDeadQueue")Queue queue,@Qualifier("orderGoodsOnDeadExchange")CustomExchange customExchange) {
return BindingBuilder.bind(orderGoodsOnDeadQueue()).to(orderGoodsOnDeadExchange()).with(RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY); return BindingBuilder.bind(queue).to(customExchange).with(RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY).noargs();
} }
/** /**
* 订单取消队列 * 订单取消队列
* @return * @return
......
...@@ -216,7 +216,7 @@ public class OneGoodsOrderStrategy extends GoodsOrderStrategy implements Initial ...@@ -216,7 +216,7 @@ public class OneGoodsOrderStrategy extends GoodsOrderStrategy implements Initial
message.getMessageProperties().setExpiration(String.valueOf(epochMilli)); message.getMessageProperties().setExpiration(String.valueOf(epochMilli));
rabbitTemplate.send( rabbitTemplate.send(
RabbitKeyConstants.ORDER_GOODS_ON_EXCHANGE, RabbitKeyConstants.ORDER_GOODS_ON_ROUTE_KEY, message RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE, RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY, message
); );
} }
} }
......
...@@ -231,7 +231,7 @@ public class ThreeGoodsOrderStrategy extends GoodsOrderStrategy implements Initi ...@@ -231,7 +231,7 @@ public class ThreeGoodsOrderStrategy extends GoodsOrderStrategy implements Initi
message.getMessageProperties().setExpiration(String.valueOf(epochMilli)); message.getMessageProperties().setExpiration(String.valueOf(epochMilli));
rabbitTemplate.send( rabbitTemplate.send(
RabbitKeyConstants.ORDER_GOODS_ON_EXCHANGE, RabbitKeyConstants.ORDER_GOODS_ON_ROUTE_KEY, message RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE, RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY, message
); );
} }
} }
......
...@@ -249,7 +249,7 @@ public class TwoGoodsOrderStrategy extends GoodsOrderStrategy implements Initial ...@@ -249,7 +249,7 @@ public class TwoGoodsOrderStrategy extends GoodsOrderStrategy implements Initial
message.getMessageProperties().setExpiration(String.valueOf(epochMilli)); message.getMessageProperties().setExpiration(String.valueOf(epochMilli));
rabbitTemplate.send( rabbitTemplate.send(
RabbitKeyConstants.ORDER_GOODS_ON_EXCHANGE, RabbitKeyConstants.ORDER_GOODS_ON_ROUTE_KEY, message RabbitKeyConstants.ORDER_GOODS_ON_DEAD_EXCHANGE, RabbitKeyConstants.ORDER_GOODS_ON_DEAD_ROUTE_KEY, message
); );
} }
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论