0

我有一个执行以下代码的计划任务:

    try {
        rabbitTemplate.convertAndSend("TEST");
        if (!isOn()) {
            turnOn();
        }
    }
    catch (AmqpException e) {
        if (isOn()) {
            turnOff();
        }
    }

一切正常。它将此消息发送到默认的“AMQP 默认”交换。我在另一端没有消费者来使用这些消息,因为我只是确保服务器仍然处于活动状态。这些消息会随着时间的推移累积并导致内存泄漏吗?

谢谢!ķ

4

1 回答 1

1

你有 RabbitMQ 用户界面吗?您应该能够看到正在创建的队列以及它们是否是持久的。上次我检查时,Spring AMQP 的默认行为是创建持久队列。

查看 RabbitMQ 管理插件:http : //www.rabbitmq.com/management.html 使用 RabbitMQ 管理插件,您还可以使用通过代码发布的消息。

关于消息会发生什么,它们只会堆积起来,直到 RabbitMQ 达到其限制,然后它将不再接受消息,直到您清除队列或使用这些消息。使用默认的 RabbitMQ 设置,我能够在队列开始阻塞之前向队列发送大约 400 万条简单的文本消息。

于 2013-11-05T18:32:24.703 回答