任何人都可以清楚地解釋什麼是JMS主題中的持久性和非持久性?JMS-Topic持久和非持久的區別。哪種最好使用耐用或不耐用?
我有服務器和客戶端模型,直到現在服務器將發送請求到客戶端完成從服務器發送的請求,並且客戶端接受請求並將響應發送回服務器。
我有一個場景,而不是服務器發起請求發送到我的客戶端,我的客戶端必須查看服務器的特定請求,併發送回服務器的迴應。
我可以使用JMS主題來解決這個問題嗎?如果有人明確解釋,將不勝感激。提前致謝。
任何人都可以清楚地解釋什麼是JMS主題中的持久性和非持久性?JMS-Topic持久和非持久的區別。哪種最好使用耐用或不耐用?
我有服務器和客戶端模型,直到現在服務器將發送請求到客戶端完成從服務器發送的請求,並且客戶端接受請求並將響應發送回服務器。
我有一個場景,而不是服務器發起請求發送到我的客戶端,我的客戶端必須查看服務器的特定請求,併發送回服務器的迴應。
我可以使用JMS主題來解決這個問題嗎?如果有人明確解釋,將不勝感激。提前致謝。
一旦客戶端註冊接收主題的消息,當客戶端斷開連接時,持久主題會爲該客戶端保留消息。因此,如果客戶端不是或不能總是連接,那麼消息可能會在稍後等待(取決於某些JMS提供程序是否允許持久消息到期,因此如果客戶端長時間未連接,則消息只是不顯示永遠不會坐在那裏)。
非持久性主題意味着客戶端只有在主動連接時才獲取該主題的消息。
在您的用例中,客戶端可以「查找特定請求」的唯一方式是該主題是持久的,客戶端至少連接了一次來自主題的消息,提供程序支持持久主題,並且自上次連接客戶端以來,郵件已發送至主題。
如果您正在查找發送到該主題的每條消息(這是我解釋您的需求的一種方式),以便客戶可以搜索以前在任意時間尋找特定請求, JMS聽起來不像解決方案。
沒有一個話題是持久或非持久的概念。這是一個可以持久或不耐用的主題訂閱。
非持久訂閱意味着發佈將會在用戶應用程序啓動並運行時發送。一旦應用程序終止,代理程序將刪除訂閱,並且不再有任何出版物將被髮送給該訂閱者。
另一方面,對於持久訂閱,即使訂閱者應用程序未運行,出版物也會被髮送到訂閱。經紀人將在應用程序關閉時持有此類出版物(在隊列中)。一旦應用程序出現,這些出版物將交付。