Sun Java System Message Queue 3.7 UR1 管理指南

管理長期訂閱

使用 imqcmd 子指令,您可以透過下列一項或多項作業,來管理代理程式的長期訂閱:

長期訂閱是由用戶端註冊為長期的主題訂閱;它具有唯一的身份,並要求代理程式保留此訂閱的訊息 (即使它的用戶成為非使用中的用戶)。通常,代理程式僅在為長期訂閱者保留的訊息過期時,才刪除該訊息。

若要列出指定實體目標的長期訂閱,請使用 list dur 子指令。list dur 子指令的語法如下:

imqcmd list dur -d destName

例如,下列指令使用本地主機預設連接埠上執行的代理程式,列出主題 SPQuotes 的所有長期訂閱:

imqcmd list dur -d SPQuotes

對於主題的每個長期訂閱,list dur 子指令會傳回長期訂閱的名稱、使用者的用戶端 ID、在此主題上形成佇列的訊息數目,以及長期訂閱的狀態 (使用中/非使用中)。例如:


Name        Client ID       Number of   Durable Sub
                            Messages      State
----------------------------------------------------------------
myDurable   myClientID       1           INACTIVE

您可以使用從 list dur 子指令傳回的資訊,識別您可能要銷毀或要為其清除訊息的長期訂閱。

purge dur 子指令使用指定的用戶端識別碼,清除指定長期訂閱的所有訊息。purge dur 子指令的語法如下:

imqcmd purge dur -n subscrName -c 
clientID

destroy dur 子指令使用指定的用戶端識別碼,銷毀指定的長期訂閱。destroy dur 子指令的語法如下:

imqcmd destroy dur -n subscrName -c 
clientID

例如,下列指令會銷毀長期訂閱 myDurable 和 clientID myClientID

imqcmd destroy dur -n myDurable -c myClientID