activemq 监听器多久执行一次,求知道
问题描述:
activemq有2部分,一部分是将消息放入队列,这个是主动的,程序去做
还有一部分是mq去消息队列里面查看消息,然后处理,这个是多久执行一次?
答
消费并不是定时的,而是基于消息驱动的。
就像js的事件驱动一样,你点击一个按钮,这个点击的操作就能触发一个事件,而activemq是消息驱动的,你可以理解为有消息入队了,在线消费者就能在第一时间知道。
答
在上面代码中我们定义了一个SessionAwareMessageListener,在这个Listener中我们在接收到了一个消息之后,利用对应的Session创建了一个到destination的生产者和对应的消息,然后利用创建好的生产者发送对应的消息。
接着我们在Spring的配置文件中配置该消息监听器将处理来自一个叫sessionAwareQueue的目的地的消息,并且往该MessageListener中通过set方法注入其属性destination的值为queueDestination。这样当我们的SessionAwareMessageListener接收到消息之后就会往queueDestination发送一个消息。