Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » QAnywhere » QAnywhere 参考 » QAnywhere 传输和删除规则

 

消息删除规则

删除规则确定客户端消息存储库和服务器消息存储库中的消息的持久性。

缺省行为

已超过到期时间但尚未接收到消息或将消息传输到任何位置时,则 QAnywhere 消息到期。消息到期之后,缺省的删除规则将删除该消息。如果已接收消息至少一次,但未对其确认,则可能会再次接收消息,即使已经超过到期时间。

客户端删除规则

缺省情况下,当消息的状态确定为已接收、已到期、已取消或无法送达且其最终状态已传输至服务器消息存储库时,该消息将从客户端消息存储库中删除。您可能希望更快地删除消息,或更长时间地保留消息。可通过在客户端传输规则文件中创建一个删除区来实现。必须在删除区的前面加上 [system:delete]

有关确认的详细信息,请参见:

有关客户端传输规则的详细信息,请参见客户端传输规则

下面是客户端传输规则文件中的删除规则部分的一个示例:

[system:delete]

; This rule governs when messages are deleted from the client
; store.
;
;    start time '1:00:00' on ( 'Sunday' )
;
; Messages are deleted every Sunday at 1:00 A.M.
;
;    ias_Status >= ias_FinalState
;
; Typically, messages are deleted when they reach a final
; state: received, unreceivable, expired, or canceled.

START TIME '1:00:00' ON ( 'Sunday' ) = ias_Status >= ias_FinalState

有关 ias_Status 的说明,请参见规则变量

服务器删除规则

缺省情况下,当消息的状态确定为已接收、已到期、已取消或无法送达且其最终状态已传回至消息发出方时,该消息将从服务器消息存储库中删除。出于某些目的(例如,审计),您可能希望将消息保留更长时间。

服务器端的删除规则适用于服务器消息存储库中的所有消息。

有关服务器传输规则的详细信息,请参见服务器传输规则

有关 ias_Status 的说明,请参见规则变量