【发布时间】:2020-01-20 21:17:05
【问题描述】:
我正在做一个 POC 来使用 RabbitMQ,并且对如何有条件地监听队列有疑问!
我们正在消费来自队列的消息,一旦消费,消息将参与上传过程,根据文件大小,该过程需要更长的时间。并且随着文件的大小变大,有时我们调用的外部服务会耗尽内存,如果多条消息被消费并且上传过程正在继续之前的消息。
也就是说,我们只想在当前/上一条消息被完全处理后才使用队列中的下一条消息。我是 JMS 新手,想知道该怎么做。
我目前的想法是,当代码流完成上一条消息的处理时,代码流将手动从队列中拉出下一条消息,因为流知道它已经完成了处理,但是如果该侦听器仅在代码流中使用手动调用,它将如何提取第一条消息!
【问题讨论】:
-
您需要提供有关您的代码的详细信息、您尝试解决问题的方法以及到目前为止没有奏效的原因。在这一点上,这个问题太模糊了。
标签: rabbitmq jms message-queue spring-jms