如何在野生蝇中依次使MDB消费
我正在关注本文创建JMS消息侦听器。一切都正确运行。当制作人发送消息时,听众可以识别新消息并开始做某事。
但是,当制作人同时发布多个消息时,听众也同时处理这些消息。如何使侦听器顺序运行?我希望它仅在成功处理上一条消息时才能处理下一条消息。
这是我的 Messagelistener
:
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destination", propertyValue = "SendingSMSQueue"),
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue")
})
public class SendgridEmail2SmsMessageListener implements MessageListener {
@Override
public void onMessage(Message message) {
try {
log.info("Receive {}", message);
// Do some heavy things
Thread.sleep(2000);
log.info("Finish");
} catch (Exception e) {
log.error("Listen message sending SMS failed", e);
}
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
经过数小时的研究,我发现有一个ActivationConfigproperty,可以让我们定义最大会议可以处理我们的请求,因此,就我而言,我只需要设置Maxsession是这样的:
有关更多信息:有关更多信息,请参考此页面
After hours of research, I found that there is an ActivationConfigProperty that allow us define the maximum sessions can handle our request, so in my case, I just need to set maxSession is 1 like this:
For more information, let reference this page https://docs.jboss.org/ejb3/docs/tutorial/1.0.7/html/Message_Driven_Beans.html