2014-09-04 90 views
0

確認和持久性如何與虛擬目標配合使用?在虛擬目標持久性存儲上發送持久性消息

如果我有一個虛擬話題「VirtualTopic.A」和兩個消費者
1.隊列在這個虛擬的主題「Consumer.B.VirtualTopic.A」,
2.耐用消費品訂閱此VirtualTopic

然後在VirtualTopic.A上發送的所有持久性消息也將存儲在隊列「Consumer.B.VirtualTopic.A」中。

爲什麼會發生這種情況,是否有辦法禁用它?

當訂閱該隊列的所有使用者都未訂閱時,是否有辦法禁用此功能?

回答

1

不,不幸的不是。

虛擬主題的要點正是您所描述的行爲。這是一種允許發佈/訂閱類似行爲的方法,但允許隊列的持久性。基本上任何匹配你的虛擬主題定義類型的隊列成爲該定義中的主題的訂閱者。與生產者的普通隊列一樣,消費者不需要消費生產該隊列的消息。

如果您不關心消費者關閉時丟失的消息,那麼您應該使用普通訂戶訪問某個主題,而不是消費者從虛擬主題隊列中消費。