2016-07-05 59 views
1

這是我如何創造一個交流和隊列綁定到它如何使用spring-rabbitmq將消息標記爲持久性?

<rabbit:topic-exchange id="dataExchange" name="MQ-EXCHANGE" durable="true"> 
     <rabbit:bindings> 
      <rabbit:binding queue="COMM_QUEUE" pattern="queue.*" /> 
     </rabbit:bindings> 
</rabbit:topic-exchange> 

我也讀了不少,裏面寫到那還需要一個消息在互聯網上的帖子被標記,如果它持續在rabbitmq或隊列崩潰的情況下將被保護。但我無法弄清楚如何標記我的信息持久。

這是我如何發佈消息隊列

@Autowired 
    private RabbitTemplate template; 

    @Override 
    public void produceMessage(Object message, String routingKey) { 
     template.convertAndSend(routingKey, message); 
    } 

我找了不同的API方法來知道這一點,也試圖尋找,我可以配置在XML但couldn任何特定的屬性找不到方法。任何指導?

回答

3

默認傳送模式(在MessagePropertiesPERSISTENT。請參閱here

爲了使其不持久,您需要使用convertAndSend(...)方法和MessagePostProcessor來設置deliveryMode屬性。

+0

感謝解決方案@Gary –

相關問題