2014-06-16 108 views
3

我正在開發一個使用Spring的web應用程序,還有其他幾個應用程序受我的信息影響。基本上他們想知道我管理的數據何時發生變化。這些數據可以通過某個A屬性進行過濾。JMS動態創建主題

由於要「訂閱」這些信息的應用數量是可變的,所以我考慮實現一個JMS發佈者/訂閱者模型,其中我根據過濾A屬性創建隊列,然後通知對該隊列的更改。所有訂閱者都會通過他們的JMS監聽器接收通知。

這種情況甚至可能嗎?也就是說,我可以在我的Spring webapp中嵌入JMS隊列(如何?),並且可以動態創建這些隊列(即,爲我的A目錄創建隊列,然後如果新元素被添加到該目錄中,動態創建,無需人工干預)。或者有沒有更好的解決方案來創建這個過濾功能?

+1

如果我沒有您錯誤地認爲您無法創建動態隊列,因爲您創建了一組固定的曲線在您的代碼中使用的任何env中的服務器機器上發出。那上述設計的一個缺點 – vikeng21

+0

那麼你將如何實現這樣的功能?有沒有一種方法可以在單個JMS隊列中過濾消息? – MichelReap

回答

0
+0

這似乎是我尋找的完美解決方案,我不知道選擇器的存在。此文件夾是否應用於服務器端(即代理不發送不符合選擇器條件的消息)或客戶端(偵聽器接收所有消息,然後篩選那些不符合選擇器的消息)? – MichelReap

+0

yepp,所以這樣的選擇器在創建監聽器後無法更改 – dk14

+0

即時通訊對不起,我不明白你對我的問題的回答 – MichelReap