轮询间隔为JMS消息监听与SQS提供商(Polling Interval for JMS Messa

2019-10-22 16:07发布

我使用Amazon SQS队列异步消费消息。 我已经开始消耗使用Amazon SQS JMS API的消息。 所以,我已经实现MessageListener的,做我的工作,一旦消息onMessage方法到达。 因为亚马逊SQS基于请求我想轮询间隔限制到1分钟或可能更多,因为我不立即需要消息的服务器取得被充电。

我反正我们就可以在JMS配置轮询间隔,或者我应该使用Amazon SQS API来处理这对我自己的。

谢谢

Answer 1:

在这种情况下,您可以选择同步接收调用即consumer.receive(timeout)而不是消息监听器。 当你想你只能接收呼叫。

我也想知道一个位作为onMessage方法应该由SQS消息提供者被调用时,才会有在队列中的消息。 不应该有任何这里涉及投票。

更新:

SQS提供一个JMS实现。 所以AsyncMessageListener绝对应该做你正在寻找的工作。 这AsyncMessageListener样品应该帮助你。



Answer 2:

看看我的博客文章我写了前阵子关于这个问题: http://thedulinreport.com/2015/05/09/guaranteeing-delivery-of-messages-with-aws-sqs/

该博客文章介绍了如何实现使用无非是AWS SDK异步听众以及提供链接到GitHub上的例子。



文章来源: Polling Interval for JMS MessageListener with SQS Provider