0

我已经实现@JmsListener了收听来自 Producer 的消息。

APP <- Consumer <- Producer

因此,如上所示,Consumer正在消费来自生产者的消息并调用应用程序(APP)来处理这些消息,在这种情况下应用程序很慢,我们想限制我们从队列中消费的消息速率(Consumer <- Producer)

 @JmsListener(
       containerFactory = XXX destination = XXX)   public void receive(Message message) throws JMSException {
       }

找到限制Producer消息速率的方法,可以通过限制订阅或并发的东西来完成,但没有找到任何支持@JmsListener注释

4

1 回答 1

1

有一个@JmsListener 并发选项:

侦听器的并发限制(如果有)。覆盖由用于创建侦听器容器的容器工厂定义的值。

并发限制可以是“下限”字符串——例如,“5-10”——或简单的上限字符串——例如,“10”,在这种情况下,下限将为 1。

请注意,底层容器可能支持也可能不支持所有功能。例如,它可能无法扩展,在这种情况下只使用上限。

于 2020-10-27T10:51:37.553 回答