4.11. 配置最后值队列
最后一个值队列 是队列类型,当队列中放置了相同最后一个值键值的较新消息时,将丢弃队列中的消息。通过此行为,最后一个值队列只为同一键的消息保留最后的值。
最后一个值队列的一个简单用例是监控股票价格,其中仅针对特定库存的最新值。
注意
如果没有配置最后一个值键的消息发送到最后一个值队列,则代理会将这个消息作为 "normal" 消息处理。当配置了最后值 键到达的新消息到达时,不会从队列中清除此类消息。
您可以单独配置最后的值队列,或者为与一组地址关联的所有队列。
以下流程演示了如何以下列方式配置最后的值队列。
4.11.1. 单独配置最后一个值队列
以下流程演示了如何单独配置最后的值队列。
-
打开
<broker-instance-dir>/etc/broker.xml
配置文件。 对于给定队列,添加
last-value-key
键并指定自定义值。例如:<address name="my.address"> <multicast> <queue name="prices1" last-value-key="stock_ticker"/> </multicast> </address>
另外,您可以配置最后一个值队列,它使用默认值
_AMQ_LVQ_NAME
。为此,请将last-value
键添加到给定的队列中。将值设为true
。例如:<address name="my.address"> <multicast> <queue name="prices1" last-value="true"/> </multicast> </address>