2012-07-25 67 views

回答

8

消息中間件(MOM)是一種技術,其中SOA是一種體系結構。儘管許多人在談論SOA時都會考慮Web服務,但您也可以使用MOM來實現它(事實上在很多情況下這是更好的選擇)

19

SOA是面向服務的體系結構,是一種體系結構它定義瞭如何構建對不同應用程序之間業務信息的訪問。簡而言之,通常,一個應用程序需要完成一些應用程序需要的信息(可能是訂單文件或其他任何東西)。另一個應用程序可能能夠對該信息做相應的處理,因此它有能力。然後第一個應用程序使用第二個應用程序的服務,該應用程序提供服務(不管底層技術如何,可以是JMS,HTTP/SOAP,HTTP/REST,EMail,FTP等)。要做到這一點,必須定義第一個應用程序和服務之間的契約,它清除了消息格式(XSD或類似的),協議(HTTP/SOAP?JMS?)等。

MOM,消息另一方面,面向中間件的軟件只是一個軟件/中間件平臺系列。它們是實際的實現,而不是像SOA這樣的高級概念。它們可以用來實現SOA架構,事件驅動架構或其他架構。通常,MOM通過異步消息傳遞豐富了一組應用程序,MOM服務器存儲並轉發消息。通常,諸如交易,保證交付,故障轉移,鬆耦合和負載平衡等內容都被嵌入到MOM實現中。 MOM的示例是IBM WebSphere MQ,Apache ActiveMQRabbitMQ,JBoss HornetQ等。