0
我试图推迟一条消息排队几秒钟。 但是,当我使用骆驼延迟选项时,它不会在队列中延迟,而是立即消耗,并延迟路径路径。 我们如何才能延迟消息,让他们在队列中等待几秒?如何在侦听器使用camel接收它之前将队列中的JMS消息延迟?
我的春天与骆驼配置看起来像下面。
<bean id="jms" class="org.apache.camel.component.jms.JmsComponent">
<property name="connectionFactory" ref="jmsConnectionFactory" />
</bean>
<camelContext id="camelContext" xmlns="http://camel.apache.org/schema/spring">
<route id="routeOne" delayer="10000">
<from uri="jms://queueone?concurrentConsumers=1"/>
<log message="routeOne incoming message ${body}"/>
<delay><constant>30000</constant></delay>
<process ref="loggerProcessor"/>
</route>
</camelContext>
<bean id="loggerProcessor" name="loggerProcessor" class="emh.LoggerProcessor"/>
某些JMS实现支持延迟消息传递。你在使用哪一个? – Nicholas