2015-04-21 30 views

回答

4

当您创建订阅时,您可以指定TTL“生存时间”。如果生存时间倒数到零,那么MQ Light将通过丢弃目标中的任何消息并且不会产生任何新消息来删除目标。

此属性的默认值为0 - 这表示一旦没有客户端订阅它,目标将被删除。

有关Node.js API的更多详细信息,请参阅IBM MQ Light Client Module文档。下面是设置TTL一些不同的例子:使用client.subscribe(...) API调用它

集:

client.subscribe("my/replies", "shareGroup1", 
    { ttl: 300000, qos: mqlight.QOS_AT_LEAST_ONCE, autoConfirm: true }, 
    msgArrivedCallback); 

或将其设置为可变的选项:

var options = { 
    ttl: 60000 , 
    qos: 1, 
    credit: 1, 
    autoConfirm: false 
}; 
client.send(...)client.unsubscribe(...)

的方法,如。