JMS2.0规范中文版

JMSTimestamp

JMSTimestamp头字段包含消息传递给提供者的时间戳。它不是实际发送的时间。由于事务或其他客户端消息排队等原因,实际发送的时间可能会有延迟。

消息发送的时候,这个字段的值将被忽略。在发送方法返回以后,这个属性将会被设置一个时间值,这个值一般在发送方法调用和方法返回的时间之间。这个值是一个Java正常的毫秒数时间格式。

因为时间戳会影响到消息的大小,如果提示应用中时间戳不会被使用,则一些提供者可能会优化消息开销。MessageProducer和JMSProducer都提供了setDisableJMSTimestamp方法,此方法允许用用提供一个禁用时间戳的提示。当应用设置一个生产者禁用时间戳,也就是说此应用不依赖于它生产的消息的时间戳。

如果某个消息提供者接受这个提示,那么这些时间戳值必须被设置为0;如果某个提供者忽略这个提示,那么时间戳值必须被设置为正常的值。