在“企業(yè)集成模式(1)---前言”中,我們簡單介紹了4中常用的集成方法,分別是:文件傳輸,遠程調用,共享數據庫,消息傳遞。
這里我們主要介紹消息傳遞,消息傳遞通過采用異步通訊等方式實現(xiàn)應用之間的解耦,不需要集成的兩個應用同時運行,從而使得通訊更佳可靠。基于消息傳遞,消息傳遞系統(tǒng)負責把數據從一個應用傳輸到另外一個應用,因此應用可以把重點放在需要共享什么數據上,而不是如何共享數據。
搭積木是大人小孩都喜歡玩的游戲,消息傳遞系也可以按照搭積木的方式搭出想要的結果
消息傳遞包含如下幾個重要的基本概念(積木單元)
通道:應用之間傳遞消息的渠道,通道是一個虛擬的管道,將一個發(fā)送者連到一個接收者
消息:通過通道傳送的一個原子的數據包,生產者應用發(fā)送消息,接收者應用消費消息
過濾器:接收者有時期望接收到感興趣的消息,而不是全部發(fā)送者發(fā)送的消息,過濾器可以實現(xiàn)對消息的過濾,只留下需要的消息
轉換器:同樣的數據在不同的系統(tǒng)中數據格式不同,發(fā)送者采用一種格式,而接收者希望另一種格式,因此在達到接收者之前,需要對消息進行轉換。
管道:接收者期望的消息格式和發(fā)送者發(fā)送的格式往往是不一樣的,需要有消息轉換器等主力對消息進行轉換,過濾器對消息進行過濾,使用管道可以將多個處理環(huán)節(jié)鏈接起來。
端點適配器:很多應用并不提供與消息傳遞系統(tǒng)功能,因此消息傳遞系統(tǒng)需要一個適配器在消息傳遞系統(tǒng)和應用之間建立起橋梁,使得他們能夠協(xié)同工作。
路由器: 負責確定消息的下一步傳送將由哪些管道接收
如此復雜的集成可以通過管道將處理環(huán)節(jié)鏈接起來完成,如同搭積木