簡體   English   中英

Spring Integration JMS組件欠佳

[英]spring integration jms components understading

我對Spring集成和JMS適配器項目不熟悉,我試圖了解各種適配器。 請有人解釋,為什么以及何時使用以下內容

<bean id="jmsDestination" class="com.tibco.tibjms.TibjmsQueue">
    <constructor-arg value="queue.sample" />
</bean>

這充當隊列嗎?

<integration:channel id="requests"/>這是什么? 為什么以及何時應該定義和使用什么?

<int-jms:outbound-channel-adapter><int-jms:inbound-channel-adapter>什么時候以及為什么我們應該使用它? 請注意,我從文檔中了解到,一個是消費者,另一個是向頻道創建新消息。

最后, <int-jms:message-driven-adapter>什么時候以及為什么我們應該使用它?

我可以瀏覽文檔,了解其中的每一個,但是無法弄清楚編寫Spring集成代碼的順序,以便我可以將它們連接在一起。

例如:回答如下:“您需要定義一個通道,然后它應該有一個出站適配器,其目的地名稱與通道ID相匹配。等,這樣會很有幫助”

我在這里先向您的幫助表示感謝。

Spring Integration是企業集成模式的實現。

Message Channel將生產者綁定到消費者。 最常見的類型是DirectChannel ,它是您在上面定義的一種。

您的第一個<bean/>與Spring Integration無關,它是Tibco對JMS Destination的實現(在本例中為稱為queue.sample的隊列)。 不幸的是,JMS選擇了“目的地”,因為您不僅要發送到目的地,而且還要從目的地接收。

Spring Integration適配器(及其所在的Spring JMS)將消息發送到JMS目標並從JMS目標接收消息。 目標是適配器配置的一部分。

outbound-channel-adapter用於將消息發送到JMS。 入站通道適配器有兩種類型, inbound-channel-adapter是已輪詢的消息源-您將輪詢器配置為每隔很長時間運行一次,它將輪詢適配器以對消息進行“輪詢”。 輪詢器通常會在客戶端中阻止可配置的超時。 message-driven-channel-adapter未輪詢; 它具有(一個或多個)事件驅動的內部線程-當消息到達隊列時,消息會被推送到適配器的通道。

在這兩種驅動程序中,最常用的是消息驅動適配器,但是如果希望僅在一天中的特定時間(使用cron觸發器)檢索消息,則可能希望使用輪詢適配器。

典型的流程可能是

message-driven-adapter->transformer->outbound-channel-adapter

->是通道的情況下,轉換器對數據進行一些處理,並且適配器將配置為可從目標讀取和寫入目標。

建議您閱讀參考手冊的介紹性章節和JMS章節。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM