MOM(面向訊息的中間件)

MOM(面向訊息的中間件)

MOM(Message Oriented Middleware)是面向訊息的中間件,使用訊息傳送提供者來協調訊息傳送操作。MOM 需要提供 API 和管理工具。客戶端使用api調用,把訊息傳送到由提供者管理的目的地。在傳送訊息之後,客戶端會繼續執行其他工作,並且在接收方收到這個訊息確認之前,提供者一直保留該訊息。

基本介紹

  • 中文名:MOM
  • 外文名:Message Oriented Middleware
  • 解釋:面向訊息的中間件
  • 特點1:間接地將訊息放入訊息佇列
  • 特點2:沒有增加應用程式的複雜性
  • 特點3:不涉及網路通訊的複雜性
簡介,特點,相關信息,補充信息,

簡介

MOM通過提供訊息傳遞和訊息排隊模型,它可在分布環境下擴展進程間的通信,並支持多
通訊協定、語言、應用程式、硬體和軟體平台。時下流行的MOM中間件產品有IBM的MQSeries、 BEA的MessageQ等。
基於 MOM 的系統基於 MOM 的系統

特點

訊息傳遞和排隊技術有以下三個主要特點:
通訊程式可在不同的時間運行:程式不在網路上直接相互通話,而是間接地將訊息放入訊息佇列,因為程式間沒有直接的聯繫。所以它們不必同時運行。訊息放入適當的佇列時,目標程式甚至根本不需要正在運行;即使目標程式在運行,也不意味著要立即處理該訊息。
對應用程式的結構沒有約束:在複雜的套用場合中,通訊程式之間不僅可以是一對一的關係,還可以進行一對多和多對一方式,甚至是上述多種方式的組合。多種通訊方式的構造並沒有增加應用程式的複雜性。
程式與網路複雜性相隔離: 程式將訊息放入訊息佇列或從訊息佇列中取出訊息來進行通訊,與此關聯的全部活動,比如維護訊息佇列、維護程式和佇列之間的關係、處理網路的重新啟動和在網路中移動訊息等是MOM的任務,程式不直接與其它程式通話,並且它們不涉及網路通訊的複雜性。

相關信息

MOM面向訊息的中間件
面向訊息的中間件使用訊息傳送提供者來協調訊息傳送操作。MOM(Message-oriented Middleware)系統的基本元素是客戶端、訊息和MOM提供者,後者包括API和管理工具。MOM提供者使用不同的體系結構路由和傳送訊息:它可以使用集中式訊息伺服器,也可以將路由和傳送功能分布在每個客戶端上。某些MOM產品結合了這兩個方法。
使用MOM系統,客戶端可以進行API調用,以便將訊息傳送到由提供者管理的目的地。該調用會調用提供者服務以路由和傳送訊息。在傳送訊息之後,客戶端會繼續執行其他工作,並確信在接收方客戶端檢索該訊息之前,提供者一直保留該訊息。基於訊息的模型與提供者的協調耦合在一起,使得創建鬆散耦合的組件系統成為可能。這樣的系統可以繼續可靠地工作,即使在有個別組件或連線失敗時也不會停機。
訊息傳送提供者協調客戶端之間的訊息傳送的另一個優點是:通過添加管理界面,可以監視和調整性能。這樣,客戶端應用程式便不必關心傳送、接收和處理訊息之外的任何問題。對於互操作性、可靠性、安全性、可伸縮性和性能之類的問題,應當由管理員通過編碼實現MOM系統來解決。
至此,我們已經介紹了使用面向訊息的中間件連線分散式組件的很多優點。下面將介紹其缺點。缺點之一源自鬆散耦合本身。在RPC系統中,只有在被調用函式完成任務之後,才能返回調用函式。在異步系統中,調用方客戶端會繼續為接收方裝入工作,直到處理裝入工作所需的資源耗盡且被調用組件發生故障。當然,可以通過監視性能和調整訊息流來儘量減少或避免這些情況,但對於RPC系統卻不必這樣做。有一點很重要,那就是了解每種系統的優缺點。每種系統所適合執行的任務都不同。有時,您需要結合兩種系統才能完全獲得所需的行為。

補充信息

圖中顯示MOM系統如何使兩個基於RPC的系統進行通信。該圖的左側顯示在不同的網路節點上分布客戶端、伺服器數據存儲庫組件以提高性能的應用程式。這是一個折扣機票預定系統:最終用戶為使用此服務支付一定的費用,使用該服務可以找到特定目的地和時間的最低費用。數據存儲庫保存有關註冊用戶和參與此折扣計畫的航空公司的信息。伺服器上的邏輯功能根據用戶的請求在所參與的航空公司中查詢價格、對信息進行排序並向用戶提供三個最低報價。對於每個這樣的航空公司,數據存儲庫都將保存有關可用航班的信息(座位、飛行時間和價格)。伺服器組件將更新這些信息以回響最終用戶輸入的數據。航空公司的伺服器還訂閱MOM服務,接收折扣預定系統的信息請求,並返回座位和價格信息。如果用戶決定購買PanWorld航空公司的折扣機票,則該系統的伺服器組件將更新數據存儲庫中的信息,然後為請求者生成機票或者向折扣服務傳送一條訊息以生成機票。

相關詞條

熱門詞條

聯絡我們