我正在编写一个系统,我在两个应用程序之间建立连接。其中一个应用程序将消息发送到glassfish jms队列。我还没有写接收器端,我注意到的是队列只会填满,因为队列没有监听器。
我喜欢做的是检查队列是否几乎已满,当它完全是空的时候。有没有办法做到这一点?我真的找不到任何东西。
或者是否可以确保删除旧邮件以便继续发送新邮件?
答案 0 :(得分:1)
虽然当然存在实际限制,但像JMS这样的排队系统并没有填满#34;。它旨在拥有一个无限的"容量。显然,你无法在不占用资源的情况下发送无限数量的消息,因此存在实际限制。
听起来你需要在消息生成器端为它生成的消息定义time to live。例如,你可以说消息只能活10秒。通过这种方式,你不太可能得到“老年人”。消息。请注意,根据您的JMS提供程序,您仍然可能会收到有关TTL年龄的消息,但您不太可能收到更旧的消息。