2012-07-25 150 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等。