我有困難,我的頭圍繞着這個概念。阿帕奇駱駝的生產者和消費者
我試圖實現一個端點,監聽一個專有格式的傳入消息的tcp端口,然後轉換消息,並駱駝接管轉發和路由。
我是否正確理解生產者負責將消息發送到Endpoint
和Consumer
從該終端接收消息?
在研究接口時,我無法弄清這些對象之間的消息流,特別是在消費者部分。 Consumer
只定義start()
和stop()
方法...
當建立一個框架實現的測試,Camel
生產者對象調用createProducer()
在端點和process()
。之後,它返回,swithout與消費者或與之相關的處理器做任何事情。
難道有人指着我正確的方向嗎?
尼斯解釋清楚的感謝。這些術語通常是反直覺的,因爲駱駝的典型用戶正在思考路由和消息交換,而不是編寫新的駱駝組件。從messageExchange的角度來看,這些術語是錯誤的。消費者生成messageExchange,而生產者消費messageExchange。 – 2015-01-22 01:03:24
作爲駱駝的新手,我很困惑這個答案。如果我查看'org.apache.camel.Producer'接口,它指定的唯一契約是'createExchange'方法。看着像EventDrivenPollingConsumer這樣的東西,Exchange的唯一功能就是「處理」它。交易所沒有通過一條路線 - 這就是處理器的工作原理,這是我的印象。 – Snekse 2015-05-15 15:29:26
@Snekse答案的描述部分恰恰說明了這一點。但無論如何,我認爲這種技術性對於生產者和消費者的概念理解沒有多大關聯。 – chrisjleu 2015-05-15 16:51:02