2013-11-25 58 views
2

如果您将消息放置到SQL服务代理队列中,消息是否有任何时间来实现价值,还是只会永远停留?服务代理消息生存时间

我似乎无法找到任何有关此。在SQL Server论坛上有this post,似乎有人建议有30分钟的有效超时。但是,这是与我不知道的消息转发适用于上述情况。

+1

30分钟是指在交通中生活的时间,即。传入的消息(来自网络)可以多大年龄并且仍然被接受并入队到其目标队列中。 –

回答

2

它将保持在队列中。如果您在BEGIN CONVERSATION调用中定义LIFETIME,那么一旦超过该时间,代理将拒绝接受消息。我不确定一旦生命周期过去之后,它还没有成功发送消息。

+0

感谢您的回答 –

+1

当'LIFETIME'到期时,错误消息被入队。 'RECEIVE'将会在结果集顶部显示错误消息(它们的序列号为-1)。应用程序必须发出END DIALOG以使消息从队列中消失,SSB永远不会擦除未处理的消息(即,坐在队列中)。 –